「せっかく列の幅を調整したのに、テキストを入力したら勝手にずれてしまった……」「何度ドラッグしても思い通りの幅にならない……」そんな経験、ありませんか? Googleドキュメントで表を使っていると、列幅が思ったとおりに固定されず、イライラする場面は本当に多いですよね。とくにビジネス文書やレポートなど、見た目の整った表が必要な場面では、たった数ミリのズレが全体の印象を大きく左右します。
実はこの問題、Googleドキュメント特有の仕様やちょっとした設定ミスが原因で起こることがほとんどです。正しい手順を知っていれば、誰でも数分で解決できます。この記事では、列幅が固定されない原因を徹底的に解説したうえで、初心者から上級者まで使える5つの確実な解決策をわかりやすくお伝えします。2026年2月時点の最新情報やGemini連携による新機能もふまえた、他では読めない実践的な内容です。
- Googleドキュメントで表の列幅が固定されない主な原因と、それぞれの対処法がわかる
- 表のプロパティやルーラーを使った正確な列幅指定の具体的な手順を習得できる
- 2026年最新のクイックレイアウト機能やGemini連携など、表の操作を効率化する新機能も把握できる
- そもそもGoogleドキュメントで表の列幅が固定されないのはなぜ?
- 解決策1表のプロパティから列幅を数値で固定する方法
- 解決策2列の幅を均等にして一発でそろえる方法
- 解決策3ルーラーを使って視覚的に幅を調整するコツ
- 解決策4コンテンツに合わせた列幅調整のベストプラクティス
- 解決策5表の位置を固定してレイアウト崩れを防ぐ方法
- 知っておくと差がつく!表の応用テクニック
- 2026年最新!Googleドキュメントの表に関するアップデート情報
- GoogleドキュメントとGoogleスプレッドシートの表の違い
- 情シス歴10年超の現場で本当にあった「表の列幅トラブル」と泥臭い解決法
- GASで表の列幅を自動制御する!コピペで使える実践スクリプト集
- 「ポイント」と「センチメートル」の変換で混乱しないための早見表
- 現場で頻発する「地味だけど困る」表のトラブルQ&A
- 知っておくべきGoogleドキュメントの表の内部構造
- 表の列幅トラブルを未然に防ぐ「運用ルール」の作り方
- ぶっちゃけこうした方がいい!
- Googleドキュメントで表の列幅が固定されないに関する疑問解決
- 今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
- まとめ
そもそもGoogleドキュメントで表の列幅が固定されないのはなぜ?
まず最初に理解しておきたいのは、Googleドキュメントの表はMicrosoft Wordの表とは少し異なる挙動をするという点です。Wordには「固定の列幅」「内容に合わせて自動調整」「ウインドウ幅に自動調整」といった明確なモードが用意されていますが、Googleドキュメントにはそこまで細かいモード切替がありません。そのため、いくつかの要因が重なると列幅が意図せず変わってしまうことがあります。
原因1ドラッグ操作の位置がずれている
列幅を変更するとき、多くの方は表の枠線をマウスでドラッグして調整しますよね。しかし、カーソルの位置がほんの少しずれているだけで、隣の列の幅まで一緒に変わってしまうことがあります。Googleドキュメントでは、枠線の上にカーソルを正確に合わせて両側矢印(⇔)が表示された状態でドラッグしなければなりません。この両側矢印が出ていない状態で操作すると、セル内のテキスト選択になってしまい、幅が変わらないように見えることがあります。
原因2セル内のテキストやコンテンツが幅を押し広げている
これが最も多い原因です。セルの中に長いテキストや画像を入れると、Googleドキュメントは自動的にセルの幅を広げてコンテンツを収めようとします。とくに改行なしの長い英単語やURLを入力した場合、列幅がどんどん広がり、他の列が圧迫されてしまいます。数値で列幅を指定していても、コンテンツ量が多いとその数値を超えて広がるケースがあるのです。
原因3ルーラーと枠線ドラッグの挙動の違いを理解していない
Googleドキュメントには列幅を調整する方法が2つあります。ひとつは文書上部のルーラー(目盛り)を使う方法、もうひとつは表の枠線を直接ドラッグする方法です。ここで注意したいのが、ルーラーで操作できるのは表の内部の列境界だけで、表の外側の枠(左端や右端)は動かせないという点です。一方、枠線を直接ドラッグする方法なら、表の外枠も含めてすべての境界線を自由に動かせます。この違いを知らないと「ルーラーで調整しているのに端が動かない」という状況に陥ります。
原因4表のプロパティで列幅が未指定になっている
Googleドキュメントでは、表のプロパティから列幅を数値で指定できます。しかし、この設定を行っていない場合、列幅は「自動」の状態になります。自動の状態では、コンテンツの量やウインドウサイズに応じて幅が変動するため、「列幅が固定されない」という現象が起こるわけです。逆にいえば、表のプロパティで明確な数値を入力すれば、その幅に固定できるということです。
解決策1表のプロパティから列幅を数値で固定する方法
最も確実で、最もおすすめの方法がこれです。表のプロパティを開き、列幅を数値で指定すれば、ドラッグ操作では動かなかった幅もぴたりと固定できます。やり方は非常にシンプルです。
- Googleドキュメントで対象の表を開き、幅を固定したい列のセル内にカーソルを置きます。
- セル内で右クリックし、表示されたメニューから「表のプロパティ」を選択します。もしくは、上部メニューの「表示形式」→「表」→「表のプロパティ」でも同じ画面を開けます。
- 右側にプロパティパネルが表示されるので、「列」セクションをクリックして展開します。
- 「列の幅」にチェックを入れて、希望する幅をセンチメートル(cm)単位で入力します。たとえば「6」と入力すれば、その列は6cmに固定されます。
- 設定が完了したら、パネル外の任意の場所をクリックして確定します。指定した幅が即座に反映されます。
この方法のメリットは、数値による正確な指定ができるため、複数の列を同じ幅にそろえたいときにもバラつきが出にくい点です。レポートや企画書など、見た目の統一感が求められる文書では必ずこの方法を使いましょう。なお、行の高さを変更したいときは、同じプロパティパネルの「行」セクションで「最小の行の高さ」にチェックを入れて数値を指定すればOKです。
解決策2列の幅を均等にして一発でそろえる方法
「細かい数値はいいから、とにかく全部の列を同じ幅にしたい!」という場面も多いですよね。Googleドキュメントには、まさにそのための便利な機能が用意されています。
- 表のどこかのセルにカーソルを置いた状態で、表の上で右クリックします。
- メニューから「列の幅を均等にする」を選択します。
- すべての列が同じ幅に自動調整されます。
同じ手順で「行の高さを均等にする」も選べるので、行と列の両方をそろえたいときは2回操作するだけで表全体がきれいに整います。また、上部メニューの「表示形式」→「表」→「列の幅を均等にする」からも同じ操作ができます。マウスの右クリックが苦手な方はこちらのメニュー操作を試してみてください。
ただし注意点があります。一部の行だけを均等にしたい場合は、対象の行だけを事前に選択してから操作する必要があります。たとえば、見出し行は広めに取って、データ行だけを均等にしたいなら、データ行のセルをドラッグで選択してから「行の高さを均等にする」を実行しましょう。何も選択せずに操作すると、見出し行を含めた全行が均等になってしまいます。
解決策3ルーラーを使って視覚的に幅を調整するコツ
数値入力が面倒なときや、「だいたいこれくらい」という感覚で調整したいときには、ルーラー(画面上部の目盛り)を活用するのが便利です。ルーラーが表示されていない場合は、上部メニューの「表示」→「ルーラーを表示」にチェックを入れてください。
ルーラーを使うときのポイントは、表の中にカーソルを置いた状態でルーラーを操作するということです。表の外にカーソルがあると、ルーラーに列の境界線マーカーが表示されません。カーソルを表内に置くと、ルーラー上に青い三角形のマーカーが現れ、これをドラッグすることで列幅を調整できます。
ただし先ほど説明したとおり、ルーラーでは表の外枠(左端・右端)の位置は変更できません。表全体の幅を広げたい場合や、左端・右端を動かしたい場合は、必ず表の枠線を直接ドラッグする方法を使ってください。この使い分けを理解しているだけで、「なぜか動かない」というストレスが激減します。
解決策4コンテンツに合わせた列幅調整のベストプラクティス
列幅が固定されない最大の原因が「セル内のコンテンツが幅を押し広げる」ことだとお伝えしました。ここでは、コンテンツと列幅をうまく共存させるためのテクニックをいくつかご紹介します。
長いテキストには改行を入れる
セル内に長い文章を入力する場合は、適度な位置で手動改行(Enterキー)を入れましょう。これだけで、テキストがセル幅を超えて横に広がるのを防げます。とくにURLやファイルパスなどの長い文字列は、そのまま入力すると列幅を大きく押し広げてしまうので、短縮URLに変換するか、別途リンクとして挿入するのがおすすめです。
画像のサイズを事前に調整する
表のセル内に画像を挿入すると、画像のサイズに合わせてセルが拡大されることがあります。画像を挿入する前に、あらかじめ画像のサイズを列幅以下に縮小しておくか、挿入後にセル内で画像をクリックしてサイズハンドルで調整してください。
セル内の余白を最適化する
表のプロパティでは、セルの内側の余白(セルパディング)も設定できます。デフォルトの余白が大きすぎると、コンテンツの実質的な表示領域が狭くなり、結果として列幅を広げないと収まらなくなります。プロパティパネルの「セル」セクションでセルの余白を適切な値(たとえば0.1cm〜0.2cm程度)に調整すると、コンパクトで見やすい表に仕上がります。
解決策5表の位置を固定してレイアウト崩れを防ぐ方法
列幅だけでなく、表そのものの位置がずれてしまうという悩みをお持ちの方も多いでしょう。Googleドキュメントでは、表のプロパティから表の配置やテキストの回り込みを細かく設定できます。
テキストの回り込みと固定位置の設定
表のプロパティを開き、「表」セクションの「スタイル」で「テキストの回り込み」を選択すると、表の周囲にテキストを回り込ませることができます。さらに「位置」の設定で「ページで修正」を選べば、テキストの追加・削除があっても表がページ上の同じ位置に留まります。逆に「テキストと一緒に移動する」を選ぶと、文章の流れに沿って表が上下に移動します。用途に応じて使い分けてください。
クイックレイアウト機能を活用する
Googleドキュメントにはクイックレイアウトという機能があり、表の配置を瞬時にプリセットのポジションに移動できます。右クリックから「表のオプション」→「クイックレイアウト」を選ぶと、左上・中央上・右上・左中央・中央・右中央・左下・中央下・右下の9種類の配置パターンが表示されます。ワンクリックで表を好きな位置に移動できるため、手動で位置を微調整する手間が省けます。この機能はページ形式のドキュメントでのみ使えるので、ページ分けなし形式を使っている場合は注意してください。
知っておくと差がつく!表の応用テクニック
基本的な列幅の固定方法がわかったところで、さらに一歩進んだテクニックもご紹介しましょう。これらを使いこなせれば、Googleドキュメントでの表作成がぐっと効率的になります。
見出し行の固定で長い表も見やすくする
表が複数ページにまたがるほど長くなった場合、見出し行が最初のページにしか表示されず、2ページ目以降でどの列が何のデータなのかわからなくなることがあります。こんなときは見出し行の固定(ピン留め)を使いましょう。表のプロパティの「行」セクションで「見出し行の固定」にチェックを入れ、固定したい行数を指定するだけです。各ページの先頭に見出し行が繰り返し表示されるようになり、大きな表でもデータの確認がスムーズになります。
行がページをまたがないようにする設定
表の行が途中でページの境目に差しかかると、ひとつの行が2ページに分割されて読みにくくなることがあります。これを防ぐには、表のプロパティの「行」セクションで「行がページをまたがることを許可」のチェックを外しましょう。するとその行は丸ごと次のページに送られ、情報が途切れることなく表示されます。とくに罫線で区切った表やデータ一覧を印刷するときに重宝する設定です。
枠線の色や太さをカスタマイズして見栄えを上げる
列幅を整えたら、仕上げとして枠線のデザインも調整してみましょう。Googleドキュメントでは、ツールバーから枠線の色、枠線の太さ、枠線の種類(実線・破線・点線)、そしてセルの背景色をそれぞれ変更できます。見出し行だけ背景色を濃くしたり、区切り線を太めにしたりするだけで、プロが作ったような洗練された表に仕上がります。ツールバーにこれらのアイコンが見当たらない場合は、ツールバー右端の「もっと見る(…)」をクリックすると表示されます。
表の並べ替え機能でデータを整理する
Googleドキュメントの表には、スプレッドシートほど高機能ではありませんが、簡単な並べ替え機能が備わっています。並べ替えの基準にしたい列のセルを選んで右クリックし、「表内を並べ替え」から「昇順に並べ替え」「降順に並べ替え」を選ぶだけです。番号順に並べ替えたり、五十音順に整理したりと、ちょっとしたデータ整理なら十分対応できます。なお、見出し行を固定しておけば、並べ替え時に見出しが巻き込まれることもありません。
2026年最新!Googleドキュメントの表に関するアップデート情報
Googleは2026年に入ってからもGoogle Workspaceの機能を積極的にアップデートし続けています。表の操作に直接関わるものから、ドキュメント全体の使い勝手を向上させるものまで、知っておきたい最新情報をまとめました。
Geminiによるドキュメント音声要約機能が登場
2026年2月12日から順次展開が始まった新機能として、Gemini搭載の音声要約機能があります。「ツール」→「音声」→「ドキュメントの要約を聴く」から利用でき、ドキュメント全体の内容を3分程度の音声でサッと把握できます。表を多用した長い報告書やデータシートを作成した際、内容の確認作業が格段に効率化されるでしょう。現在はGoogle AI ProやUltraプラン、Business Standard以上のWorkspaceライセンスで利用可能です。
GeminiによるAI画像生成がGoogleドキュメントで利用可能に
Gemini for Google Workspaceライセンスをお持ちの方は、Googleドキュメント内でAIによる画像生成が可能になりました。表の中に挿入するイラストや図解を、外部ツールを使わずにドキュメント上で直接作成できます。表と画像を組み合わせたビジュアルリッチな資料作りが、これまで以上に手軽になっています。
AI拡張アクセスアドオンの提供開始
2026年2月5日には、AI拡張アクセス(AI Expanded Access)という新しいアドオンが発表されました。Gemini 3 Proによる高度な推論機能や、プロフェッショナルグレードの動画生成(Veo 3.1)などが含まれており、Googleドキュメントを含むWorkspace全体でAIの活用幅が大きく広がっています。Business StandardおよびPlus、Enterprise StandardおよびPlusプランでは即時購入可能で、その他のプランでも2026年3月1日から購入できるようになる予定です。
GoogleドキュメントとGoogleスプレッドシートの表の違い
「列幅が固定されない」という悩みを持つ方の中には、Googleスプレッドシートとの違いがわからず混乱している方もいるかもしれません。ここで両者の表機能を比較しておきましょう。
| 比較項目 | Googleドキュメントの表 | Googleスプレッドシートの表 |
|---|---|---|
| 主な用途 | 文書内のデータ整理、レイアウト調整 | データの計算、分析、大量データ管理 |
| 列幅の固定方法 | 表のプロパティで数値指定、またはドラッグ | 列ヘッダーのドラッグ、右クリックで数値指定 |
| テキストの折り返し | 自動的に折り返される | 「はみ出す」「折り返す」「切り詰める」の3種類から選択 |
| 関数・数式の使用 | 使用不可 | 豊富な関数が利用可能 |
| 並べ替え | 昇順・降順の簡易並べ替え | 複数条件での高度な並べ替え |
| セルの結合・分割 | 結合・分割ともに可能 | 結合は可能、分割は結合解除のみ |
つまり、表を使って計算やフィルタリングをしたいならスプレッドシート、文書の中で情報を整理して見せたいならドキュメントの表、という使い分けが基本です。スプレッドシートでは「表示形式」→「ラッピング」からテキストの表示方法を「はみ出す」「折り返す」「切り詰める」の3種類で切り替えられるため、列幅とテキスト表示の関係がより柔軟にコントロールできます。一方、Googleドキュメントの表ではテキストは基本的にセル内で自動折り返しされるため、列幅さえ固定すればテキストがはみ出す心配はほとんどありません。
情シス歴10年超の現場で本当にあった「表の列幅トラブル」と泥臭い解決法
ここからは、筆者が情報システム部門で10年以上にわたって社内ユーザーのサポートをしてきた経験から、実際に何度も遭遇した「リアルなトラブル」とその解決法をお話しします。マニュアルには載っていない、現場ならではの知見です。
Wordファイルをインポートしたら表の列幅が全崩壊する問題
これは社内で最も多いトラブルのひとつです。取引先からWordで届いた契約書や報告書をGoogleドキュメントで開いた瞬間、表の列幅がガタガタに崩れて悲鳴が上がる、という光景を何十回と見てきました。原因は、WordとGoogleドキュメントでは表の内部的な幅の管理方法がまったく異なるからです。Wordでは「固定幅」「自動調整」「ウインドウ幅に合わせる」という3つのモードがありますが、Googleドキュメントにはそのモード概念がありません。とくにWordの「自動調整」で作られた表は、インポート時にGoogleドキュメント側がコンテンツ量から幅を再計算するため、元の見た目と大きく変わってしまうのです。
現場でたどり着いた解決策はこうです。まず、インポート直後に表のプロパティを開いてすべての列に対して手動で幅をcm単位で再指定します。「面倒くさい」と思うかもしれませんが、これが最も確実です。次に、表全体を選択して「列の幅を均等にする」を実行してから微調整するという手順にすると、ゼロから合わせるよりずっと早く終わります。そして何より大事なのは、元のWordファイルを必ず手元に残しておくことです。Googleドキュメント上でどうしても再現できないレイアウトは、最終的にWordに戻して仕上げるという判断も、情シスとしては立派な解決策です。完璧主義は作業効率の敵です。
「閲覧のみ」の権限で表のプロパティがグレーアウトして何もできない問題
これも週に一度は相談されるトラブルです。「表の列幅を変えようとしたら、プロパティが全部グレーアウトしていて操作できないんですけど!」という問い合わせが来たら、まず確認すべきはドキュメントの共有権限です。「閲覧者」や「閲覧者(コメント可)」の権限ではすべての編集操作が無効化されるため、当然ながら表の列幅も変更できません。
解決策は単純で、ドキュメントのオーナーに「編集者」権限をリクエストするか、自分のGoogleドライブにコピーを作成するかのどちらかです。コピーを作成するには、「ファイル」→「コピーを作成」を選ぶだけです。コピー先のドキュメントなら自分がオーナーなので、表の列幅を含めたすべての編集が自由にできます。ただし、コピーは元ファイルとの同期が切れるため、共同編集が必要な場面ではオーナーに権限変更をお願いするのが正解です。
提案モード(提案)のまま表を操作してしまい混乱する問題
Googleドキュメントには「編集」「提案」「閲覧」の3つのモードがありますが、「提案」モードのまま表の列幅を変更しようとすると、思わぬ挙動をすることがあります。提案モードでは変更が「提案」として記録されるため、実際のレイアウトに即座には反映されません。列幅を変えたつもりなのに見た目が変わらない場合は、画面右上のモード切り替えボタンが「提案」になっていないか確認してみてください。表のレイアウト調整は必ず「編集」モードで行い、完了後にレビュー用の提案モードに切り替えるという習慣をつけると、混乱を防げます。
ブラウザの拡張機能が表のドラッグ操作を妨害する問題
これは原因の特定にかなり苦労したケースです。あるユーザーが「表の枠線をドラッグしても全く動かない」と報告してきたのですが、別のユーザーの環境では同じドキュメントで問題なく操作できます。調べてみると、そのユーザーのChromeブラウザに入っていたドラッグ&ドロップ系の拡張機能がGoogleドキュメントのマウスイベントを横取りしていたことが原因でした。
対処法は、Chromeのシークレットウインドウ(拡張機能がすべて無効になる状態)でGoogleドキュメントを開き、同じ操作を試すことです。シークレットモードで問題なく操作できれば、原因は拡張機能です。そこから拡張機能をひとつずつ無効にして犯人を特定します。情シスの立場から言わせてもらうと、Googleドキュメントで表を多用する業務には広告ブロッカーやマウスジェスチャー系の拡張機能をオフにすることを全社的にアナウンスしておくと、問い合わせが激減します。
ページ分けなし形式にしたら表のレイアウト機能が制限される問題
Googleドキュメントには「ページ形式」と「ページ分けなし形式」の2つのドキュメント形式があります。「ページ分けなし形式」にすると、表のクイックレイアウト機能やテキストの回り込み設定、ページ上の固定位置設定が使えなくなります。これを知らずに「クイックレイアウトが見当たらない」とパニックになるユーザーは少なくありません。
確認方法は簡単です。「ファイル」→「ページ設定」を開いて、「ページ分けなし」が選択されていたら「ページ」に切り替えてください。表のレイアウトをしっかり制御したいドキュメントでは、必ず「ページ」形式を使うことを強くおすすめします。逆に、長いメモやウィキ的な用途でページの区切りが邪魔な場合は「ページ分けなし」で問題ありませんが、その場合は表の位置制御に制限があることを理解しておきましょう。
GASで表の列幅を自動制御する!コピペで使える実践スクリプト集
Google Apps Script(GAS)を使えば、Googleドキュメントの表操作をプログラムで自動化できます。ここでは、情シスの現場で実際に役立つスクリプトを、初心者でもコピペで使えるように具体的なコード付きで紹介します。GASを使ったことがない方でも、手順に沿って進めれば問題ありません。
GASの始め方(30秒でできる準備)
まずGASの実行環境を開く方法です。Googleドキュメントを開いた状態で、上部メニューの「拡張機能」→「Apps Script」をクリックしてください。新しいタブにスクリプトエディタが開きます。ここにコードを貼り付けて、上部の「実行」ボタンを押すだけです。初回実行時には権限の承認を求められますが、「権限を確認」→自分のGoogleアカウントを選択→「許可」の順に進めれば完了です。
スクリプト1ドキュメント内のすべての表の列幅を均等にする
手作業で1つずつ「列の幅を均等にする」操作をするのが面倒なとき、このスクリプトならドキュメント内のすべての表を一括処理できます。とくに10個以上の表があるようなマニュアルや仕様書を作成するときに劇的に時間を短縮できます。
function equalizeAllTableColumns() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var tables = body.getTables();
// ページ幅からマージンを引いた実質的な表の最大幅を計算
var attrs = body.getAttributes();
var pageWidth = attrs;
var marginLeft = attrs;
var marginRight = attrs;
var usableWidth = pageWidth - marginLeft - marginRight;
for (var i = 0; i < tables.length; i++) {
var table = tables;
var numCols = table.getRow(0).getNumCells();
var equalWidth = usableWidth / numCols;
for (var col = 0; col < numCols; col++) {
table.setColumnWidth(col, equalWidth);
}
}
Logger.log(tables.length + "個の表の列幅を均等に設定しました。");
}
このスクリプトのポイントは、ページの幅と余白から実際に使える幅を自動計算している点です。ハードコーディングせずにページサイズに合わせた幅を算出するため、A4でもレターサイズでも正しく動作します。単位はポイント(1インチ=72ポイント)で処理されます。
スクリプト2特定の列幅パターンをテンプレート的に一括適用する
たとえば社内の議事録テンプレートで「項番の列は2cm、内容の列は10cm、担当者の列は4cm」という決まったパターンがある場合、毎回手動で設定する代わりに、このスクリプトで一発適用できます。
function applyColumnWidthTemplate() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var tables = body.getTables();
// ここに希望する列幅をポイント単位で定義する
// 1cm ≒ 28.35ポイント
var CM_TO_PT = 28.35;
var columnWidths = ;
if (tables.length === 0) {
Logger.log("ドキュメント内に表が見つかりませんでした。");
return;
}
// 最初の表にテンプレートを適用
var table = tables;
var numCols = table.getRow(0).getNumCells();
for (var col = 0; col < numCols && col < columnWidths.length; col++) {
table.setColumnWidth(col, columnWidths);
}
Logger.log("列幅テンプレートを適用しました。");
}
columnWidths
の配列を変えるだけで、どんなパターンにも対応できます。議事録用、報告書用、仕様書用など、用途別にスクリプトを複製して名前を変えておけば、状況に応じて使い分けられます。cmからポイントへの変換係数は28.35です。たとえば6cmの列幅なら
6 * 28.35 = 170.1
ポイントと計算します。
スクリプト3表の列幅を取得してログに出力する(デバッグ・確認用)
「今この表の列幅は実際に何ポイントなんだろう?」と確認したいとき、GUIの表のプロパティではcm単位でしか見られませんが、GASなら正確なポイント値を取得できます。他人が作ったドキュメントの表を解析するときに便利です。
function logTableColumnWidths() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var tables = body.getTables();
for (var i = 0; i < tables.length; i++) {
var table = tables;
var numCols = table.getRow(0).getNumCells();
Logger.log("=== 表 " + (i + 1) + " (" + numCols + "列) ===");
for (var col = 0; col < numCols; col++) {
var width = table.getColumnWidth(col);
if (width === null) {
Logger.log(" 列" + (col + 1) + ": 未指定(自動)");
} else {
var cm = (width / 28.35).toFixed(2);
Logger.log(" 列" + (col + 1) + ": " + width + "pt(約" + cm + "cm)");
}
}
}
}
ここで重要なのが、
getColumnWidth()
がnullを返すケースがあるということです。nullが返るのは、その列の幅が明示的に設定されていない場合です。つまり「列幅が固定されていない」状態を意味します。nullが返ってきた列こそが、幅が不安定になっている犯人です。このスクリプトでまず状態を診断し、nullの列に対してスクリプト1やスクリプト2で幅を設定するという流れが、情シス的にはもっとも合理的なアプローチです。
スクリプト4表を新規作成して列幅を最初から固定する
後から列幅を調整するより、最初から正しい幅で表を作ってしまうのが一番確実です。定型的な表を毎回手動で作成している方は、このスクリプトをカスタマイズして使えば、フォーマットのブレがなくなります。
function createFormattedTable() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var CM = 28.35;
// 3行4列の表データを定義
var data = [
,
,
];
// 表を挿入
var table = body.appendTable(data);
// 列幅を設定(cm単位で指定)
var widths = ;
for (var col = 0; col < widths.length; col++) {
table.setColumnWidth(col, widths);
}
// 見出し行の背景色を設定
var headerRow = table.getRow(0);
for (var c = 0; c < headerRow.getNumCells(); c++) {
headerRow.getCell(c).setBackgroundColor("#4285f4");
// テキストの色を白に
var text = headerRow.getCell(c).editAsText();
text.setForegroundColor("#ffffff");
text.setBold(true);
}
Logger.log("フォーマット済みの表を作成しました。");
}
このスクリプトは列幅の固定だけでなく、見出し行の背景色や文字色まで一括設定しているのがポイントです。色のコード
#4285f4
はGoogleのブランドカラーの青ですが、社内の規定カラーに変更してください。毎回同じ見た目の表を作れるので、チーム内でのドキュメント品質が安定します。
スクリプト5複数のドキュメントの表の列幅を一括修正する
情シスの仕事をしていると、「過去に作った100件のドキュメントの表を全部同じ幅にそろえてほしい」という無茶な依頼がたまに飛んできます。手作業では何日もかかりますが、GASなら数分で終わります。
function batchFixColumnWidths() {
// 対象ドキュメントのIDを配列で指定
var docIds = [
"ドキュメントID_1",
"ドキュメントID_2",
"ドキュメントID_3"
];
var CM = 28.35;
var targetWidths = ;
for (var d = 0; d < docIds.length; d++) {
try {
var doc = DocumentApp.openById(docIds);
var body = doc.getBody();
var tables = body.getTables();
for (var i = 0; i < tables.length; i++) {
var table = tables;
var numCols = table.getRow(0).getNumCells();
for (var col = 0; col < numCols && col < targetWidths.length; col++) {
table.setColumnWidth(col, targetWidths);
}
}
doc.saveAndClose();
Logger.log("完了: " + doc.getName());
} catch (e) {
Logger.log("エラー(ID: " + docIds + "): " + e.message);
}
}
Logger.log("全ドキュメントの処理が完了しました。");
}
ドキュメントIDは、GoogleドキュメントのURLの中の
/d/
と
/edit
の間にある長い文字列です。たとえばURLが
https://docs.google.com/document/d/abc123xyz/edit
なら、IDは
abc123xyz
の部分です。try-catchでエラーハンドリングしているため、権限のないドキュメントや削除済みのドキュメントがあっても処理が中断せず、問題のあったIDだけログに記録されます。
「ポイント」と「センチメートル」の変換で混乱しないための早見表
GASでは列幅をポイント(pt)単位で指定しますが、Googleドキュメントの画面上ではセンチメートル(cm)で表示されます。この単位の違いが混乱の原因になりやすいので、よく使う幅の換算表を用意しました。GASでコードを書くときにこの表を手元に置いておくと、数値の入力ミスを防げます。
| センチメートル(cm) | ポイント(pt) | 用途の目安 |
|---|---|---|
| 1.0 | 28.35 | 番号列、チェック欄 |
| 1.5 | 42.52 | 短い項番、ステータス列 |
| 2.0 | 56.69 | 日付、金額などの数値列 |
| 3.0 | 85.04 | 名前、カテゴリ列 |
| 4.0 | 113.39 | 短い説明文、担当者名 |
| 5.0 | 141.73 | 中程度の説明文 |
| 6.0 | 170.08 | やや長い説明文 |
| 8.0 | 226.77 | メインコンテンツ列 |
| 10.0 | 283.46 | 本文やコメントの広い列 |
| 16.0(A4の実質幅) | 453.54 | 全幅1列の表 |
覚え方のコツとしては、「1cmはだいたい28ポイント」と丸めて覚えておけば十分です。厳密さが必要な場合だけ28.35で計算すれば、実務では困りません。ちなみにA4用紙のデフォルトマージン(左右各2.54cm)を差し引いた実質的な表の最大幅は約16cmで、これが約453ポイントです。
現場で頻発する「地味だけど困る」表のトラブルQ&A
表のセルに文字を入力すると勝手に行の高さが広がるのを止めたいのですが?
残念ながら、Googleドキュメントの仕様上、セル内のテキスト量に応じて行の高さが自動で広がる挙動を完全に止めることはできません。「最小の行の高さ」は設定できますが、これはあくまで「最低でもこの高さを維持する」という設定であり、テキストがそれ以上の高さを必要とする場合はセルが広がります。対処法としては、セル内のフォントサイズを小さくする、テキスト量を減らす、あるいは表ではなくGoogleスプレッドシートの「切り詰める」機能を使って埋め込む、という方法があります。正直にいうと、固定高さのセルが必要なユースケースでは、Googleドキュメントの表よりもスプレッドシートをドキュメント内にリンク埋め込みする方が現実的です。
結合セルがある表で列幅を変更すると他のセルまで崩れるのですが?
これはGoogleドキュメントの表において最も厄介な問題のひとつです。セルを結合すると、結合されたセルが複数の列にまたがるため、個々の列幅の変更が予想外の範囲に影響します。とくに横方向にセルを結合した場合、結合されたセルに含まれるすべての列の幅が連動して変わることがあります。
現場での鉄則は、「列幅を確定させてから結合する」という順番を守ることです。先に結合してしまうと後から個別に列幅を調整するのが非常に難しくなります。もしすでに結合済みの表で列幅が崩れてしまった場合は、一度すべての結合を解除し(右クリック→「セルの結合を解除」)、列幅を再設定してから、改めて結合し直す方が結果的に早いです。面倒に見えますが、崩れた結合セルの上から無理やり列幅を直そうとするより、確実に数倍早く終わります。
印刷プレビューで見ると表の幅が画面表示と違うのですが?
これは多くの人が気づかないまま困っている問題です。Googleドキュメントの画面上の表示は、モニターの解像度やブラウザのズーム率によって見え方が変わります。しかし印刷時にはページのサイズとマージンに基づいた正確な幅で出力されます。つまり、画面で「ちょうどいい」と思った幅が、印刷したら思ったより広かったり狭かったりすることがあるのです。
対策としては、ドラッグで感覚的に合わせるのではなく、必ず表のプロパティから数値で幅を指定し、印刷前に
Ctrl + P
(Macなら
Cmd + P
)でプレビューを確認する習慣をつけてください。情シスとしてもうひとつアドバイスするなら、ブラウザのズームは100%に戻した状態で作業することです。ズームが125%や150%になっていると、ルーラーの目盛りと実際の幅にズレが生じ、これが列幅の感覚的な調整を狂わせます。
GASの getColumnWidth() がnullを返すのですが、これはバグですか?
バグではなく仕様です。
getColumnWidth()
がnullを返すのは、その列に対して明示的な幅が一度も設定されていない場合です。Googleドキュメントで表を新規作成した直後は、すべての列がnull(未指定・自動)の状態です。このとき列幅は、表の全体幅を列数で均等割りした値がデフォルトで適用されますが、内部的には「未指定」として扱われています。GASで
setColumnWidth()
を一度でも呼び出せば、それ以降は
getColumnWidth()
が数値を返すようになります。先述の診断スクリプト(スクリプト3)でnullが見つかった列に対して値を設定することが、GASによる列幅固定の基本手順です。
知っておくべきGoogleドキュメントの表の内部構造
ここは少し上級者向けの話になりますが、列幅のトラブルを根本から理解するためには、Googleドキュメントが内部的に表をどう管理しているかを知ることが役立ちます。
Google Docs APIのドキュメントによると、表はStructuralElementのひとつとして文書構造の中に位置づけられています。各表は行(TableRow)のリストを持ち、各行はセル(TableCell)のリストを持つという入れ子構造です。列幅の情報は表レベルのTableColumnPropertiesに格納されており、個々のセルではなく「列」単位で管理されています。つまり、同じ列に属するセルはすべて同じ幅を共有しているのが基本です。
ここで重要なのが、セルの結合がこの原則に「例外」を作り出すという点です。セルが水平方向に結合されると、そのセルは複数の列にまたがることになり、列幅の計算が複雑になります。だからこそ、結合セルを含む表では列幅が不安定になりやすいのです。この内部構造を理解していると、「なぜ結合セルのある表は幅が崩れやすいのか」「なぜ列幅はセル単位ではなく列単位でしか設定できないのか」という疑問が解消されるはずです。
Google Docs APIを使って列幅を変更する場合は、
UpdateTableColumnPropertiesRequest
を使います。このリクエストでは表の開始インデックス(文書内での表の位置)と、変更する列番号のリストを指定します。列番号のリストを空にすると全列が対象になるというのがポイントです。GASの
setColumnWidth()
メソッドは、このAPIを内部的にラップしたものと考えてよいでしょう。
表の列幅トラブルを未然に防ぐ「運用ルール」の作り方
情シスとして断言しますが、ツールの使い方を教えるだけでは表のトラブルはなくなりません。組織で同じ問題が繰り返し発生するなら、「運用ルール」を作ってしまうのが最も費用対効果の高い対策です。以下、実際に社内で運用して効果のあったルールをいくつかご紹介します。
ルール1表を作るときは必ずテンプレートを使う
自由に表を作らせると、人によって列幅も見た目もバラバラになります。報告書用、議事録用、管理表用など、用途別にテンプレートドキュメントを作成し、Googleドライブの共有フォルダに置いておきましょう。テンプレートには列幅を事前に設定しておくのはもちろん、見出し行の色やフォントサイズも統一しておきます。先ほど紹介したスクリプト4(表を新規作成するGAS)をテンプレート生成用に改良してチームに配布するのも有効です。
ルール2列幅は必ず数値で指定し、ドラッグでの調整は禁止する
「ドラッグで微調整」は一見お手軽ですが、人によって幅がバラつく原因の第一位です。社内ルールとして「表の列幅は表のプロパティから数値で指定する」と明確に決めるだけで、ドキュメント間の見た目の統一感が劇的に向上します。最初は面倒に感じるかもしれませんが、後から修正する手間を考えたら圧倒的に効率的です。
ルール3Wordとの相互変換が必要なドキュメントはGoogleドキュメントだけで表を完成させない
取引先とWordでやり取りする文書の場合、Googleドキュメントだけで表を仕上げてからWordにエクスポートすると、レイアウト崩れのリスクがあります。最終形がWordであるなら、Googleドキュメントは下書き・共同編集用と割り切り、最終仕上げはWordで行うという運用フローを組んだほうが結果的にトラブルが減ります。「どちらか一方のフォーマットをマスターにする」と決めるだけで、チーム全体の作業効率が上がります。
ぶっちゃけこうした方がいい!
ここまで読んでくださった方に、個人的な本音をぶっちゃけます。Googleドキュメントの表で列幅が固定されない問題について、いろいろな解決策を紹介してきましたが、正直にいうと、列幅の微調整に15分以上かかっているなら、そもそもアプローチが間違っている可能性が高いです。
情シスを10年以上やってきて学んだ最大の教訓は、「ツールの限界を見極めて、適材適所で使い分ける」ということです。Googleドキュメントの表は、あくまで「文書の中に簡易的な表を入れる」ための機能であって、Excelやスプレッドシートのような精密な表計算ツールとは根本的に設計思想が違います。5列以上あるような複雑な表を無理やりGoogleドキュメントの中で完璧に仕上げようとするのは、ぶっちゃけ時間の無駄になることが多いです。
私が現場でたどり着いたベストプラクティスはこうです。まずGoogleスプレッドシートで表を作り、列幅を完璧に固定してから、そのスプレッドシートの範囲をGoogleドキュメントに「リンク貼り付け」する。これが最も安定していて、かつメンテナンスも楽です。リンク貼り付けなら元のスプレッドシートを更新するだけでドキュメント側にも反映できるし、スプレッドシート側では列幅の固定が100%確実に機能します。Googleドキュメント側でも「更新」ボタンを押すだけで最新のデータと見た目が反映されるので、二重管理にもなりません。
もちろん、3列×5行くらいのシンプルな表ならGoogleドキュメントの中で直接作った方が早いです。そういう場合は、迷わず表のプロパティを開いて列幅を数値で指定してください。たった10秒の手間で「列幅が勝手に変わる」問題は完全に消えます。
そしてGASを使える人は、テンプレート生成スクリプトを1本作っておくことを心からおすすめします。一度作れば半永久的に使えますし、チームに展開すれば全員の表の品質が自動的に統一されます。ぶっちゃけ、マニュアルを書いて周知するより、スクリプト一発で統一してしまった方がよっぽど効果的です。人間の記憶や注意力に依存するルールは必ず破られますが、スクリプトは裏切りませんから。
最後にもうひとつ。Googleドキュメントは毎月のように新機能が追加されているツールです。2026年2月にはGeminiによる音声要約やAI画像生成が追加されましたし、今後も表まわりの機能強化は十分あり得ます。だからこそ、今の時点で「完璧な運用」を追求しすぎるより、「70点で回せる仕組み」を先に構築して、あとはGoogleのアップデートに合わせて微調整していくというスタンスが、情シス的には一番賢いと思います。完璧を目指して手が止まるより、まずは「表のプロパティで幅を数値指定する」「テンプレートを作る」「GASを1本書く」のどれかひとつだけでも今日から実行してみてください。それだけで、表の列幅に関するストレスは確実に半分以下になりますよ。
Googleドキュメントで表の列幅が固定されないに関する疑問解決
表のプロパティで列幅を指定したのに、まだ幅が変わってしまうのはなぜですか?
考えられる原因は主に2つです。ひとつは、セル内のコンテンツ(とくに画像や長い文字列)が指定した幅に収まりきらないケースです。この場合、コンテンツのサイズを小さくするか、テキストに改行を入れて対処してください。もうひとつは、同じ表内の別の列の幅が「自動」になっていて、その列が広がった影響で隣接列の幅も変わってしまうケースです。すべての列に対して数値で幅を指定することで、この連鎖的なズレを防げます。
スマートフォンやタブレットからでも列幅を固定できますか?
はい、できます。ただしスマートフォン版のGoogleドキュメントアプリでは、操作方法がパソコン版と少し異なります。表のセルをタップして選択した後、書式設定アイコン(鉛筆のようなアイコン)をタップすると「最小の行の高さ」や「列の幅」を数値で指定できます。ドラッグ操作で列幅を変更することも可能ですが、小さな画面では精密な操作が難しいため、数値指定をおすすめします。
Googleドキュメントの表をWordに書き出したとき、列幅が変わってしまうことはありますか?
残念ながら、完全に同じレイアウトが維持される保証はありません。ただし、Googleは2023年以降、Wordとの表の互換性を大幅に改善しています。表のプロパティで数値指定した列幅は、多くの場合エクスポート後も維持されます。それでもズレが生じる場合は、Word側で表のプロパティを開き、「列の幅を固定する」オプションが有効になっているか確認してください。
Apps Scriptを使って列幅をプログラム的に固定する方法はありますか?
はい、Google Docs APIでは
UpdateTableColumnPropertiesRequest
を使って、表の列幅をプログラム的に変更・固定できます。APIでは表の開始インデックスと
TableColumnProperties
オブジェクトを指定し、特定の列だけを変更したい場合は列番号のリストを渡します。すべての列を一括で変更したい場合は空のリストを渡してください。大量のドキュメントに同じ書式を適用したい場合や、テンプレートを自動生成するワークフローを構築したい場合に非常に便利な方法です。
列幅を固定した表をテンプレートとして再利用するには?
一度理想的な幅に調整した表を含むドキュメントを、Googleドライブ上でテンプレートとして保存しておくのがおすすめです。新しい文書を作るたびにそのテンプレートをコピーすれば、毎回列幅を設定し直す手間が省けます。組織で統一フォーマットを使いたい場合は、Google Workspaceの管理者がカスタムテンプレートとして登録することも可能です。
今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失や重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
ぜひ、あなたの悩みを私に解決させてください。
まとめ
Googleドキュメントで表の列幅が固定されない問題は、原因さえわかれば意外とあっさり解決できます。最も確実なのは表のプロパティから列幅を数値で指定する方法で、これだけで大半のケースに対応できます。それに加えて、「列の幅を均等にする」機能やルーラーの活用、コンテンツの最適化、そして表の位置固定を組み合わせれば、どんな文書でもプロフェッショナルな見た目の表を作れるようになります。
2026年現在、GeminiによるAI機能の統合やクイックレイアウトなど、Googleドキュメントの表まわりの機能はどんどん進化しています。まずは今日ご紹介した5つの解決策を試してみて、ストレスのない表作成を体験してください。一度コツをつかめば、もう列幅で悩むことはなくなるはずです。





コメント