結論を先に言います。「Google スプレッドシートの関数を25個マスターすれば、毎日1〜2時間の手作業がゼロになります。」これ、私が実際に経験した数字です。
正直に書くと、2年前の私は「関数って難しそう、VLOOKUP くらいしか知らない」という状態でした。大量のデータをコピペで整理して、手作業で集計して、毎月末の報告書作業に丸1日かけていた。「もっと楽にならないかな」と調べはじめて、スプレッドシートの関数の沼にハマっていきました。
最初の1週間で5つの関数を覚えた段階で、報告書の作成時間が4時間から45分に短縮されました。「えっ、こんなに変わるの?」と自分でも驚いた。そこから一気に関数を習得して今に至ります。



この記事では、実務で本当に使うGoogleスプレッドシート関数25選を、カテゴリ別・難易度順に解説します。コピペして使えるサンプル式も付きで、今日から即実践できます。
- 今日から使える必須関数(SUM・IF・COUNTIF など)で時短する方法
- VLOOKUP / XLOOKUP でデータ検索を自動化するコツ
- QUERY 関数でデータ集計が劇的に楽になるしくみ
- IMPORTRANGE でシート間データ連携を一発でやる方法
- TEXT・ARRAYFORMULA など知らないと損する裏ワザ関数
- 関数を組み合わせる「ネスト」の基本パターン
■目次
関数を使う前と使った後:どれくらい変わるの?
「関数って本当に効果があるの?」という疑問に正直に答えます。私が実際に計測した数字です。
使う前:手作業だけの1ヶ月
月次の売上レポートを作るとき、私がやっていた手作業のフローです。
- 各部門のデータを別シートから手動でコピペ(30〜45分)
- 月別合計をSUM関数で一個ずつ入力(15分)
- 条件に合うデータだけ目視でフィルタ→手入力(1時間)
- ミスがないか確認・修正(30分)
- 合計:約2.5〜3時間/月次レポート1本


使った後:関数を導入した後のワークフロー
QUERY・IMPORTRANGE・ARRAYFORMULA を覚えた後の同じ作業です。
| 作業 | 手作業のみ | 関数活用後 | 削減率 |
|---|---|---|---|
| データ転記・集計 | 45分 | 0分(自動) | 100%削減 |
| 条件付き集計 | 1時間 | 5分(QUERY式作成) | 92%削減 |
| データ検索・照合 | 30分 | 2分(VLOOKUP設定) | 93%削減 |
| ミスチェック | 30分 | ほぼ0(自動計算なのでミスなし) | 95%削減 |
| 合計 | 約2.5〜3時間 | 約30分以下 | 80%以上削減 |



【基礎編】まず覚えるべき必須関数10選
スプレッドシートを使い始めたばかりの人も、まずここから。これだけ覚えれば日常業務の7割はカバーできます。
① SUM:合計を一発で出す(最頻出)
全関数の中で最もよく使う、合計を求める関数です。「こんな基本的なの?」と思うかもしれませんが、応用パターンを知るとグッと便利になります。
=SUM(A1:A10) → A1からA10の合計=SUM(A1:A10, C1:C10) → 離れた範囲の合計=SUM(A:A) → A列全体の合計(データが増えても自動対応)

② AVERAGE:平均を簡単に計算
データの平均値を求めます。売上の月次平均、アンケートの平均点など、実務でよく使います。
=AVERAGE(B2:B31) → B2からB31の平均=AVERAGEIF(C2:C31, "東京", B2:B31) → 東京だけの平均


③ IF:条件によって表示を変える
「〇〇より大きければAを表示、そうでなければBを表示」という条件分岐の基本です。評価シートや達成状況チェックに欠かせません。
=IF(A2>=80, "合格", "不合格")=IF(B2="", "未入力", B2) → 空白チェックに便利=IF(C2>100, "達成", IF(C2>80, "80%超", "未達")) → 多段階の分岐

④ COUNTIF:条件に合うセルの個数を数える
「〇〇という文字が含まれるセルは何個?」「100以上の数値は何件?」を瞬時に出せます。アンケート集計や在庫チェックで大活躍。
=COUNTIF(A2:A100, "完了") → 「完了」の件数=COUNTIF(B2:B100, ">100") → 100超えの件数=COUNTIF(C2:C100, "*東京*") → 「東京」を含む件数


⑤ SUMIF:条件付き合計(これ知らないと損)
COUNTIFの合計バージョン。「東京支社の売上だけを合計して」という処理が一発でできます。
=SUMIF(A2:A100, "東京", B2:B100)→ A列が「東京」のとき、B列の値を合計
=SUMIF(C2:C100, ">2026/01/01", D2:D100)→ 2026年以降の日付の売上合計

⑥ COUNTA:空白でないセルの個数を数える
「このシートに何件データが入っているか」を一発で確認できます。COUNTIF との使い分けは「条件なしで単純に件数を数えたいとき」。
=COUNTA(A2:A1000) → 空白でないセルの個数=COUNTA(A:A)-1 → ヘッダーを除いた件数
⑦ LEFT / RIGHT / MID:文字列を切り出す
「住所から都道府県だけを取り出す」「注文番号の先頭3文字がほしい」という場面で使います。データの整形作業が劇的に速くなります。
=LEFT(A2, 3) → 左から3文字を取り出す=RIGHT(A2, 4) → 右から4文字を取り出す=MID(A2, 5, 3) → 5文字目から3文字を取り出す


⑧ TRIM:余分なスペースを一括削除
Excelやシステムからコピペしたデータに余分なスペースが入っていること、よくありませんか?TRIM でまとめて削除できます。
=TRIM(A2) → 前後の余分スペースを削除、文字間は1スペースに統一=TRIM(LOWER(A2)) → スペース削除 + 小文字化を同時に

⑨ TEXT:数値・日付を指定の形式で表示する
「2026/5/14」を「2026年5月14日」や「05月」の形式で表示したいとき、TEXT 関数が役立ちます。レポートの見た目整形に必須。
=TEXT(A2, "yyyy年mm月dd日") → 例:2026年05月14日=TEXT(A2, "mm月") → 例:05月=TEXT(B2, "#,##0円") → 例:1,234,567円
⑩ IFERROR:エラーを非表示にする(神関数)
VLOOKUP などでデータが見つからない場合に「#N/A」というエラーが表示されます。IFERROR でラップすると、エラーの代わりに任意の文字列を表示できます。
=IFERROR(VLOOKUP(A2, 商品表!A:B, 2, 0), "データなし")→ VLOOKUPの結果がエラーなら「データなし」と表示


【中級編】VLOOKUP でデータ検索を自動化する
スプレッドシートの関数の中で「覚えてよかった度」No.1と言ったら、VLOOKUP を挙げる人が多い。別シートのデータを自動で引っ張ってくる「データ検索」の基本関数です。
⑪ VLOOKUP:縦方向の検索(定番中の定番)
「商品コードから商品名と単価を自動で引っ張る」「社員番号から名前と所属部署を取り出す」——こういった「コードから情報を引き出す」作業が一発でできます。
=VLOOKUP(検索値, 範囲, 列番号, 0)
具体例:
=VLOOKUP(A2, 商品マスタ!A:D, 2, 0)
→ A2の商品コードで商品マスタを検索し、2列目(商品名)を返す
最後の「0」は必須!(完全一致で検索する設定)


⑫ HLOOKUP:横方向の検索
VLOOKUPの横バージョン。行の見出しから列を探して値を返します。横長のマトリクス表を扱うときに使います。
=HLOOKUP(検索値, 範囲, 行番号, 0)
例:月別売上表から特定月のデータを取り出す
=HLOOKUP("5月", A1:M10, 3, 0)
⑬ XLOOKUP:VLOOKUPの進化版(2023年以降推奨)
XLOOKUP は VLOOKUP の弱点を全て解消した新関数。「見つからないときのデフォルト値を設定できる」「左側も検索できる」「複数列を一括で返せる」という三つが最大の違いです。
=XLOOKUP(検索値, 検索範囲, 返す範囲, "見つからない場合", 0)
具体例:
=XLOOKUP(A2, 商品マスタ!A:A, 商品マスタ!B:B, "該当なし", 0)
→ IFERROR 不要でスッキリ書ける!

⑭ INDEX + MATCH:最強の検索コンビ
VLOOKUP が苦手な「検索列より左の列を返す」処理ができる、上級者御用達の組み合わせです。
=INDEX(返したい範囲, MATCH(検索値, 検索範囲, 0))
具体例:
=INDEX(A2:A100, MATCH("田中太郎", B2:B100, 0))
→ B列で「田中太郎」を見つけ、同じ行のA列の値を返す


【中級編】QUERY関数でデータ集計を爆速化する
ここからが「上位10%の使い手」に入るコーナー。QUERY 関数はデータベースの SQL 言語をスプレッドシートで使えるようにしたもので、一度使うと手放せなくなります。
⑮ QUERY:SQLライクで集計・抽出が自由自在
「特定の条件でデータを絞り込んで、特定の列だけ表示して、合計値も出して」——これをたった1行の式で実現できます。
=QUERY(範囲, "クエリ文字列", ヘッダー行数)
よく使うパターン:
全データを表示:
=QUERY(A:D, "SELECT *", 1)
条件絞り込み:
=QUERY(A:D, "SELECT A,B,C WHERE D > 100", 1)
部門別集計:
=QUERY(A:C, "SELECT A, SUM(C) GROUP BY A ORDER BY SUM(C) DESC", 1)



QUERYで特に便利なのが「WHERE 句」で動的に条件を変えられること。
=QUERY(A:D, "SELECT A,B,C WHERE B = '"&E1&"'", 1)→ E1セルに部門名を入力するだけで、表示データが切り替わる
日付条件:
=QUERY(A:D, "SELECT * WHERE A >= date '"&TEXT(F1,"yyyy-mm-dd")&"'", 1)

⑯ UNIQUE:重複を取り除いた一覧を作る
長いデータリストから「種類の一覧」を作りたいとき、UNIQUE が一発で解決します。QUERY の GROUP BY でも似たことはできますが、単純な重複削除なら UNIQUE が速い。
=UNIQUE(A2:A100) → 重複を除いた値の一覧=SORT(UNIQUE(A2:A100)) → 重複除去 + アイウエオ順に並べる
⑰ FILTER:条件に合う行だけを抽出する
フィルター機能と似ていますが、FILTER 関数は別の場所に「抽出済みの表」を自動生成します。元データを保持したまま、別シートに絞り込み結果を表示したいときに最適。
=FILTER(A2:D100, B2:B100="東京") → B列が「東京」の行だけ抽出=FILTER(A2:D100, C2:C100>100000) → C列が100,000超の行だけ抽出=FILTER(A2:D100, (B2:B100="東京")*(C2:C100>100000)) → AND条件


【上級編】IMPORTRANGE でシート間・ファイル間連携
複数のスプレッドシートファイルを扱うチームにとって、これは「知らないと絶対損する」神関数です。
⑱ IMPORTRANGE:別ファイルのデータをリアルタイムで取り込む
「各部門が入力している個別シートのデータを、集計シートに自動で集約したい」——そういう場面で IMPORTRANGE が解決します。コピペは不要、常に最新データが自動で表示されます。
=IMPORTRANGE("スプレッドシートのURL", "シート名!範囲")
具体例:
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxx", "売上データ!A1:E100")
初回だけ「アクセスを許可」のボタンを押す必要あり


IMPORTRANGE は参照元のファイルへのアクセス権が必要です。社外のシートを参照する場合は共有設定を確認してください。また、データ量が多いと読み込みが遅くなることがあります。
⑲ IMPORTRANGE + QUERY の組み合わせ(上級テク)
IMPORTRANGE で別ファイルのデータを取り込みつつ、QUERY で絞り込み集計する——この組み合わせが「最強コンボ」です。
=QUERY(IMPORTRANGE("URL", "シート1!A:E"), "SELECT Col1, SUM(Col5) WHERE Col3='東京' GROUP BY Col1", 1)
→ 別ファイルから東京のデータだけを取り込み、合計も出す

【上級編】ARRAYFORMULA で処理を一括化する
「同じ関数を1000行分コピペした」という経験はありませんか?ARRAYFORMULA を使えば、1行の式で全行に適用できます。
⑳ ARRAYFORMULA:ひとつの式を配列全体に適用
通常(C2に入力してC3〜C1000にコピペ):
=A2*B2(全行にコピーが必要)
ARRAYFORMULA(C2だけに入力):
=ARRAYFORMULA(A2:A1000*B2:B1000)
→ C2〜C1000に一括で計算結果が表示される!


【便利技編】知っているだけで差がつく関数5選
ここからは「使う頻度は高くないけど、知っていると一気に解決できる」関数を紹介します。
㉑ GOOGLETRANSLATE:翻訳を自動化する
スプレッドシートには翻訳関数があります。海外とのやりとりや多言語対応のコンテンツ管理に便利。
=GOOGLETRANSLATE(A2, "ja", "en")→ A2の日本語テキストを英語に翻訳
=GOOGLETRANSLATE(A2, "auto", "ja")→ 言語自動判定して日本語に翻訳

㉒ SPARKLINE:セル内にミニグラフを表示する
グラフを別途作らなくても、セルの中にミニグラフ(スパークライン)を表示できます。ダッシュボード的な一覧表を作るときに見栄えが格段に良くなります。
=SPARKLINE(A2:F2) → 折れ線グラフ(デフォルト)=SPARKLINE(A2:F2, {"charttype","bar"}) → 棒グラフ=SPARKLINE(A2:F2, {"charttype","bar"; "color1","#58ce91"}) → カラー指定も可能
㉓ REGEXMATCH / REGEXEXTRACT:正規表現で文字列処理
「このセルに電話番号が含まれているか」「メールアドレスだけを取り出したい」——正規表現を使うと複雑な文字列処理が一発でできます。
=REGEXMATCH(A2, "^\d{3}-\d{4}-\d{4}$") → 電話番号形式かチェック(TRUE/FALSE)=REGEXEXTRACT(A2, "[a-z]+@[a-z]+\.[a-z]+") → メールアドレスを抽出


㉔ NETWORKDAYS:営業日だけを計算する
「今日から納期まで何営業日あるか」を計算するとき、土日祝日を除いた日数を出せます。プロジェクト管理やスケジュール計算に便利。
=NETWORKDAYS(TODAY(), A2) → 今日から A2 の日付まで何営業日か=NETWORKDAYS(A2, B2, 祝日リスト!A:A) → 祝日リストも除外した営業日数
㉕ IMPORTDATA / IMPORTHTML:外部データを自動取り込み
CSV ファイルや Web ページの表データをスプレッドシートに自動で取り込めます。為替レートや公開データのモニタリングに使えます。
=IMPORTDATA("CSVのURL") → CSV データを取り込む=IMPORTHTML("WebページのURL", "table", 1) → Web ページの1番目のテーブルを取り込む

関数の組み合わせ:よく使うネストパターン
関数は単体でも使えますが、組み合わせることで真価を発揮します。実務でよく使う「定番ネストパターン」を紹介します。

| 用途 | ネスト例 | 説明 |
|---|---|---|
| エラー回避付き検索 | =IFERROR(VLOOKUP(A2, マスタ!A:B, 2, 0), "なし") |
エラーなら「なし」と表示 |
| 件数付き重複削除 | =SORT(UNIQUE(A2:A100)) |
重複除去してソート |
| 配列IFERROR | =ARRAYFORMULA(IFERROR(A2:A100/B2:B100, 0)) |
割り算でエラー(ゼロ除算)の場合0に |
| 条件付き文字列結合 | =IF(B2="", A2, A2&" ("&B2&")") |
B2が空なら名前だけ、あれば名前(補足)と表示 |
| 動的QUERY | =QUERY(A:D, "SELECT * WHERE B='"&E1&"'", 1) |
E1の値で絞り込み条件を変える |


よくある失敗パターンと対策
スプレッドシートの関数でつまずくポイントは大体同じです。よくある失敗と対策をまとめました。

| エラー・症状 | 原因 | 対策 |
|---|---|---|
| #N/A が出る | VLOOKUPで値が見つからない | IFERRORでラップ。スペースや全角/半角のズレも確認 |
| #REF! が出る | 参照先が削除された・範囲外 | 参照範囲を確認・修正。列全体(A:A)指定で防げることも |
| #VALUE! が出る | 数値のつもりが文字列になっている | VALUE()関数で数値変換するか、セルの書式を「数値」に |
| VLOOKUP で変な値が返る | 最後の引数がTRUE(近似一致)になっている | 最後を必ず「0」または「FALSE」にする |
| QUERYでエラーになる | 日本語のシート名・列名が含まれる | Col1・Col2の表記を使う。シート名を英語にすると安定 |
| IMPORTRANGEが#REFになる | アクセス許可が取れていない | 初回のみ「アクセスを許可」ボタンをクリックする |


よくある質問(FAQ)
- Q1. ExcelとGoogle スプレッドシートで関数の使い方は違いますか?
-
基本的な関数(SUM・AVERAGE・VLOOKUP・IF など)はほぼ同じです。ただし、QUERY・IMPORTRANGE・SPARKLINE・GOOGLETRANSLATE はスプレッドシート独自の関数で、Excelでは使えません。逆にExcel特有の機能(一部のVBA関数など)はスプレッドシートで使えないものもあります。

ねこ ExcelからGoogleスプレッドシートに移行したとき、基本関数はそのまま使えたので移行コストはほぼゼロだった! - Q2. VLOOKUPとXLOOKUPはどちらを使えばいいですか?
-
新しくシートを作るならXLOOKUP推奨です。エラー時のデフォルト値を設定できて、IFERRORのラップが不要になります。既存のシートにVLOOKUPがたくさんある場合は、無理に置き換えなくてもOK。XLOOKUPは比較的新しい関数なので、古いExcelファイルと連携する場合はVLOOKUPのほうが互換性が高いです。
- Q3. QUERY関数でうまく動かないことが多いのですが、なぜですか?
-
よくある原因は3つです。①日本語のシート名・列ヘッダー(Col1形式を使う)、②文字列の引用符のエスケープ(シングルクォートはダブルクォートで囲む)、③日付形式のフォーマット(”yyyy-mm-dd”形式で指定する)。IMPORTRANGE経由のデータをQUERYする場合は特に注意が必要です。

PEN(見習い) これ、最初つまずいたポイントNo.1でした!Col1形式を知ってから一気に解決しました - Q4. ARRAYFORMULAを使うと計算が重くなりませんか?
-
範囲を広くしすぎると確かに重くなることがあります。
=ARRAYFORMULA(A2:A)のように列全体を指定するより、=ARRAYFORMULA(A2:A10000)のように上限を設定するのが現実的です。データ量が1万行を超える場合は、QUERY と組み合わせて必要な行だけ取り出すアプローチも検討してください。 - Q5. スプレッドシートが重くなった場合の対処法は?
-
原因の多くは①IMPORTRANGE・IMPORTDATA の多用(外部参照が多いと遅くなる)、②ARRAYFORMULA の範囲が広すぎる、③SPARKLINE や条件付き書式が多すぎるです。対策として:使っていないシートやデータを削除する、IMPORTRANGE は必要最小限の範囲に絞る、条件付き書式の件数を減らす、がおすすめです。

ねこ 「条件付き書式が大量についたまま放置」が意外と重くなる原因として多い!不要なものを定期的に掃除すると速くなることが多いよ - Q6. Google スプレッドシートの関数を勉強するのに何から始めればいいですか?
-
まず①SUM・AVERAGE・COUNTIF・SUMIF の「集計4兄弟」、次に②VLOOKUP または XLOOKUP でデータ検索、③IFとIFERRORでエラー処理、の順番で覚えるのがおすすめです。実際の業務で「これを自動化したい」という課題を持ちながら覚えると、定着が早くなります。
- Q7. QUERYとピボットテーブルはどちらが使いやすいですか?
-
手軽さならピボットテーブル、柔軟性ならQUERY。ピボットテーブルはGUIで操作できて直感的ですが、データが更新されても自動更新されない(手動でリフレッシュが必要)という弱点があります。QUERYは式を書く必要がありますが、一度作れば常に最新データで自動集計されます。チームで共有して使うシートならQUERYがおすすめです。

PEN(見習い) 「毎月末に同じ集計作業をしている」なら、最初にQUERYで仕掛けを作っておくほうが長期的に楽ってことですね!
ねこ まさにそれ。「一回作れば終わり」にするのがスプレッドシート活用の真髄
暮らしに役立つおすすめアイテム
本記事で紹介した内容に関連する、暮らしを豊かにするおすすめアイテムをピックアップしました。
まとめ:今日から使える関数アクションプラン

今回紹介した関数25選のまとめです。
| レベル | 関数 | 主な用途 |
|---|---|---|
| 基礎(今日から) | SUM・AVERAGE・IF・COUNTIF・SUMIF・COUNTA・LEFT/RIGHT/MID・TRIM・TEXT・IFERROR | 集計・条件分岐・文字列処理 |
| 中級(1週間後) | VLOOKUP・HLOOKUP・XLOOKUP・INDEX+MATCH・QUERY・UNIQUE・FILTER | データ検索・絞り込み集計 |
| 上級(1ヶ月後) | IMPORTRANGE・ARRAYFORMULA・GOOGLETRANSLATE・SPARKLINE・REGEXMATCH・NETWORKDAYS・IMPORTHTML | 外部連携・配列処理・高度な集計 |
今日から試すなら、まずこの3ステップ。
- SUMIF で部門別集計を自動化する(手動集計時間を半分に)
- VLOOKUP または XLOOKUP でデータ引き出しを自動化する(コピペ撲滅)
- IFERROR で全ての検索関数をラップする(エラー地獄から解放)



スプレッドシートの関数は「一度覚えれば一生使える」知識です。最初の学習コストは少しかかりますが、その後の時短効果は計り知れません。ぜひ今日から1つずつ試してみてください。
関連記事もあわせてどうぞ:




























