付B 付録 / 用語・早見表・情報源

よくある質問(FAQ)

Google スプレッドシートの関数・QUERY・GAS・共有/権限・トラブルについて、よくある疑問に簡潔に答えるFAQ集。

読了 約10分 最終更新 2026.06 FAQ質問トラブルシュート

Google スプレッドシートを使っていて多くの人がつまずく疑問を、カテゴリ別にまとめました。各回答は要点に絞っています。より深く知りたい場合は、各質問の下のリンクから関連章へ進んでください。仕様の上限など将来変わりうる数値は、必ず公式ヘルプの最新情報をご確認ください。

はじめに・基礎

Q Excel と Google スプレッドシートの違いは何ですか?
A
最大の違いはクラウド前提であることです。ブラウザ上で動き、複数人が同じファイルを同時に編集でき、変更履歴が自動で残ります。関数の多くは共通ですが、QUERYARRAYFORMULAIMPORTRANGE のようにスプレッドシート独自の関数もあります。一方で、超大規模データや高度なマクロ・アドインはExcelのほうが得意な場面が残ります。
Q 無料で使えますか?
A
個人の Google アカウントがあれば、基本機能は無料で使えます。法人向けの Google Workspace は有料ですが、共有ドライブや管理機能などが追加されるもので、表計算そのものの基本機能は無料版でも利用できます。
Q セルや行の数に上限はありますか?
A
1つのスプレッドシートに保持できるセル数には上限があります。具体的な値は変更されることがあるため、最新の数値は公式ヘルプを参照してください。実務では、上限に達する前に動作が重くなることが多いので、不要な空行・空列の削除や、データの分割を検討するのが現実的です。
Q スマホでも編集できますか?
A
はい。iOS / Android 向けの「Google スプレッドシート」アプリで閲覧・編集できます。ただし画面が狭く、複雑な数式の入力や広い範囲の選択はパソコンのほうが快適です。スマホは確認や軽微な修正、パソコンは本格的な編集、と使い分けるのがおすすめです。

関数

Q VLOOKUP と XLOOKUP はどちらを使うべきですか?
A
新しく書くなら XLOOKUP をおすすめします。VLOOKUP は「検索列より右側」しか取得できず、列を挿入すると番号がずれやすい弱点があります。XLOOKUP は検索範囲と取得範囲を別々に指定でき、左方向の検索や「見つからないとき」の指定も簡単です。既存シートに大量の VLOOKUP がある場合は、無理に書き換えず動いているものは残す判断も妥当です。
関連章を読む →
Q 検索キーより左の列の値を取り出したいときは?
A
VLOOKUP は左方向に検索できません。XLOOKUP なら検索範囲と取得範囲を別々に指定できるため左の列も取得できます。XLOOKUP が使えない場合は、=INDEX(取得列, MATCH(検索値, 検索列, 0)) の組み合わせで同じことができます。
関連章を読む →
Q 「#N/A」エラーが出るのはなぜですか?
A
#N/A は「該当する値が見つからない」ことを示します。検索値が範囲内に存在しない、前後の空白や全角・半角の違いで一致していない、完全一致を指定すべきところで近似一致になっている、などが主な原因です。意図的に「見つからない場合」を許容するなら IFNAIFERROR で表示を整えられます。
関連章を読む →
Q 「#REF!」エラーが出たらどう対処しますか?
A
#REF! は「参照先が無効」になったことを示します。数式が参照していた行・列・シートを削除した場合によく発生します。対処は、削除前の状態に戻して参照を貼り直すか、数式を開いて #REF! になっている箇所を正しい参照に書き直すことです。範囲を消す前に、その範囲を参照している数式がないか確認すると防げます。
関連章を読む →
Q 列全体に同じ数式を一気に入れるには?
A
1行目に書いた数式を ARRAYFORMULA で囲むと、配列としてまとめて計算でき、1つの数式で列全体を処理できます。例:=ARRAYFORMULA(IF(A2:A="", "", A2:A*1.1))。各行に数式をコピーするより管理が楽で、行が増えても自動で適用されます。
関連章を読む →

QUERY・集計

Q QUERY で「#VALUE!」が出るのはなぜですか?
A
多くは列のデータ型が混在していることが原因です。QUERY は列ごとに型を判定するため、数値列に文字列が混ざっていたり、ヘッダー行の扱いがずれていたりすると失敗します。対処として、ヘッダー行数を第3引数で明示する(例:=QUERY(A1:C, "select B", 1))、対象列の値の型をそろえる、空白セルを除く条件を加える、などが有効です。
関連章を読む →
Q QUERY で月別に集計するには?
A
QUERY の中で日付をまとめるには、スカラー関数 month()year()group by と組み合わせます。例:=QUERY(A1:C, "select year(A), month(A), sum(C) group by year(A), month(A)", 1)month() は0始まり(1月が0)になる点に注意し、必要なら表示用に +1 する列を別に用意します。
関連章を読む →
Q ピボットテーブルと QUERY はどう使い分けますか?
A
探索的に集計を見たいときはピボットテーブル条件や並びを固定して自動で表を生成したいときは QUERY が向きます。ピボットはドラッグ操作で素早く集計でき、QUERYは数式として残るため他の数式と連携したり、抽出条件をセル参照で動的に変えたりできます。両者は排他ではなく、用途で選ぶとよいです。
関連章を読む →
Q QUERY と SUMIF / COUNTIF はどちらがよいですか?
A
単純な「条件に合う合計・件数」だけなら SUMIFCOUNTIFS のほうが読みやすく軽量です。複数列の抽出・並べ替え・グループ集計をひとまとめにしたい場合は QUERY が適します。表が大きく重い場合は、必要な範囲だけを対象にすると速くなります。
関連章を読む →

データ整形

Q 表記ゆれ(「(株)」「株式会社」など)を直したいときは?
A
まず TRIM で前後の空白を除き、SUBSTITUTE で特定の表記を置き換えます。例:=SUBSTITUTE(TRIM(A2), "(株)", "株式会社")。置き換えのルールが多い場合は、対応表を別シートに作って XLOOKUP で正規の名称に引き当てる方法が、後からメンテしやすくおすすめです。
関連章を読む →
Q 重複データを取り除きたいときは?
A
数式で重複を除いたリストを作るなら UNIQUE が便利です(例:=UNIQUE(A2:A))。元データそのものから重複行を削除したい場合は、メニューの「データ」→「データのクリーンアップ」→「重複を削除」を使います。元に戻せるよう、削除前にコピーを取っておくと安全です。
関連章を読む →
Q 全角と半角が混在しているのを統一したいときは?
A
ローマ字や数字の全角・半角を含む変換には、Microsoft Excel 由来の互換関数として ASC(全角→半角)や JIS(半角→全角)が使えます。例:=ASC(A2)。表記ゆれの度合いが大きいときは、SUBSTITUTE で個別に置換する、あるいは整形用の対応表を併用すると確実です。
関連章を読む →
Q 「2024-1-5」のような表記を正しい日付に直すには?
A
区切りや桁が不ぞろいの文字列は日付として認識されないことがあります。文字列から年月日を取り出して DATE(年, 月, 日) で組み立て直すのが確実です。値が文字列の数字であれば、DATEVALUE で日付値に変換できる場合もあります。変換後は表示形式を「日付」に設定してください。
関連章を読む →

共有・権限

Q 「編集者」と「閲覧者」の違いは何ですか?
A
閲覧者は内容を見るだけで変更できません。閲覧者(コメント可)はコメントを付けられますが本体は編集できません。編集者はデータの変更・共有設定の変更まで行えます。共有相手には、必要最小限の権限を渡すのが安全の基本です。
Q 「リンクを知っている全員」に公開するのは危険ですか?
A
URLさえ分かれば誰でもアクセスできる状態になるため、個人情報や社外秘を含むファイルでは避けるべきです。リンクが転送・流出すれば意図しない相手に見られます。原則は「特定の人を指定して共有」し、不特定多数への公開はどうしても必要なときだけ、かつ機密を含まないシートに限定しましょう。
Q 他の人に誤って消されないようにするには?
A
「データ」→「シートと範囲を保護」で、特定の範囲やシートを保護できます。編集できる人を限定したり、編集時に警告を出す設定が選べます。完成した集計表や数式列を保護しておくと、共同編集中の事故を大きく減らせます。
Q 編集できる人を後から確認・変更できますか?
A
はい。右上の「共有」ボタンから、現在アクセス権を持つ人の一覧と権限を確認・変更でき、不要になった相手を削除することもできます。担当者の異動や退職の際は、定期的に共有先を見直すと安全です。

GAS・自動化

Q GAS(Google Apps Script)は難しいですか?
A
JavaScript をベースにした言語なので、最初は身構えるかもしれませんが、定型作業の自動化だけなら少しの記述で実現できます。まずは「ボタンを押すと特定の処理を実行する」程度の小さな自動化から始め、動くものを少しずつ広げていくのが挫折しにくい進め方です。
Q GAS は何から始めればよいですか?
A
メニューの「拡張機能」→「Apps Script」からエディタを開けます。最初の一歩としては、シートの値を読み書きする短い関数を書いて実行し、実行ログで結果を確認するところから始めるのがおすすめです。いきなり大きな仕組みを作らず、1つの処理を確実に動かすことを目標にしましょう。
Q 毎朝決まった時刻に自動でメールを送れますか?
A
はい。GAS の GmailApp でメールを送る処理を書き、時間主導型のトリガーを設定すれば、毎朝など決まったタイミングで自動実行できます。送信件数などには上限があり、アカウント種別によって異なるため、運用前に公式の制限を確認しておくと安心です。
Q GAS の処理がとても遅いのですが?
A
セルを1つずつ読み書きすると、その回数だけ通信が発生して非常に遅くなります。getValues() でまとめて読み込み、配列上で処理してから setValues() でまとめて書き戻すのが基本の高速化です。ループの中で getValue() / setValue() を呼ばない、という原則を覚えておきましょう。
Q GAS 実行時の承認ダイアログは安全ですか?
A
自分が作ったスクリプトが、メール送信やファイルアクセスなどの権限を必要とするときに表示される正規の確認です。自分で書いた・信頼できるコードであれば承認して問題ありません。一方、出所の分からないスクリプトを安易に承認すると、データへのアクセスを許してしまうため、内容を理解できないコードは承認しないでください。

トラブル

Q 数式が計算されず、文字列のまま表示されてしまいます。
A
そのセルの表示形式が「書式なしテキスト(文字列)」になっている可能性が高いです。表示形式を「自動」または「数値」に直してから、数式を入力し直してください。また、先頭がアポストロフィ(')で始まっていると、その内容は文字列として扱われます。
関連章を読む →
Q 日付が数値になったり、数値が日付になったりするのはなぜ?
A
スプレッドシートは内部で日付を「連番(シリアル値)」として持っているためです。日付セルを数値表示にすると連番が、数値セルを日付表示にすると日付が見えます。直すには、対象セルを選んで表示形式を正しい種類(日付なら「日付」、ふつうの数値なら「数値」)に設定し直してください。
Q ファイル全体の動作が重いときの対処は?
A
主な原因は、データ量の多さと「揮発性関数」の多用です。NOW / TODAY / RAND などは編集のたびに再計算されるため、多用すると重くなります。対策として、不要な空行・空列を削除する、重い数式の結果を値として貼り付け固定する、参照範囲を必要な分だけに絞る、などが有効です。
Q 見せたくない列を共有相手に隠したいときは?
A
列を右クリックして「列を非表示」にできますが、非表示は再表示できるため秘匿の手段にはなりません。本当に見せたくないデータは、別のスプレッドシートに分けて共有相手を限定するのが安全です。計算には使うが見せたくない場合は、作業用シートに置いて参照する方法もあります。

上記で解決しない場合は、まず関連章で基礎を確認し、それでも不明なときは Google の公式ヘルプセンターで最新の仕様や手順を確認してください。仕様や上限は更新されることがあるため、重要な判断の前には一次情報の確認をおすすめします。