Googleスプレッドシート 関数 一覧

Googleスプレッドシート 関数 一覧 アイキャッチ画像 Googleスプレッドシート

同じ部署のメンバーから「数式が動かない」「エラーの原因がわからない」と相談されるたび、私はその人の画面を覗き込みます。そこで目にするのは、10年以上Excelやスプレッドシートを触ってきた人間から見れば、ほんの些細な、しかし業務を止めるには十分すぎるほどの小さなミスです。VLOOKUP関数の参照範囲を固定し忘れていたり、全角と半角のスペースが混じっていたり。こうしたミスは、関数の知識そのものよりも「チェックの習慣」がないことに起因します。

実務で求められるのは、難しい関数を知っていることではなく、作成したシートが明日も明後日も、そして自分以外の誰かが触っても正しく動くという信頼性。その信頼性を支えるための、実務家によるチェックリストを整理しました。

  1. Googleスプレッドシート 関数 一覧を活用して業務スピードを3倍にするチェックリスト
  2. なぜ関数を「知っている」だけでは実務で通用しないのか
    1. 1. メンテナンス性は「美しさ」ではなく「コスト」の問題
    2. 2. データの「汚さ」を想定していない関数の脆弱性
    3. 3. スプレッドシート固有の挙動への無理解
  3. 売上管理や経費精算で必須となる基本集計の確認ポイント
  4. 大規模な顧客リストから必要な情報を瞬時に引き出す参照テクニック
  5. 請求書作成や納期管理でミスを防ぐ日付・文字列操作の掟
  6. 条件分岐を使いこなし複雑な判定ロジックを自動化する思考法
  7. 月次報告の直前に血の気が引く「計算ミス」を防ぐセルフチェック
  8. 現場の修羅場で実際に起きた「関数トラブル」ワースト5
    1. 1. 参照範囲が固定されておらず、コピーするたびに1行ずつズレていた
    2. 2. 文字列として認識された「数字」が集計から漏れていた
    3. 3. 循環参照の警告を無視し続けて、計算結果が「0」に固定された
    4. 4. VLOOKUPの列番号を「数字」で直打ちし、列挿入でデータが崩壊
    5. 5. ARRAYFORMULAが展開される場所に「手入力データ」があり、全行消えた
  9. メンテナンス性を向上させる「美しい数式」の書き方
  10. チームでスプレッドシートを共有する際に徹底すべき運用ルール
  11. 現場の悩みにお答えするスプレッドシート活用FAQ
  12. 手作業からの脱却がもたらす「考える時間」の確保
    1. 関連記事

Googleスプレッドシート 関数 一覧を活用して業務スピードを3倍にするチェックリスト

業務でスプレッドシートを使いこなすためには、まず自分がどの道具(関数)を持っているかを把握しておく必要があります。しかし、単に名前を覚えるだけでは不十分。どのような場面でどの関数を組み合わせるべきか、その「引き出し」を整理するためのチェック項目を挙げます。

  • 基本集計関数(SUM, COUNT, AVERAGE等)の引数範囲に「漏れ」がないか

    データの行が増えた際、集計範囲から漏れてしまうのは実務で最も多いミスの一つ。筆者の経験では、範囲を「A2:A100」のように固定せず、「A2:A」と終点を指定しない書き方を推奨する。これにより、データが追加されても自動的に集計対象に含まれる。

    Googleスプレッドシート 関数 一覧 - データの増減に対応する集計範囲の設定例
    データの増減に対応する集計範囲の設定例

  • 検索関数(VLOOKUP, XLOOKUP)の第4引数を「0(FALSE)」にしているか

    近似一致(TRUE)を意図的に使う場面は、実務では1%もないだろう。しかし、デフォルトがTRUEであるため、ここを省略したために意図しない値が返ってくるトラブルを何度も見てきた。必ず「完全一致」を明示すること。

  • 文字列操作関数(LEFT, RIGHT, MID)で全角・半角のカウントミスはないか

    商品コードや社員番号の切り出しにおいて、システムから吐き出されたデータに半角スペースが混じっていると、抽出結果がずれる。LEN関数で文字数を確認する癖をつけるのがプロのやり方だ。

  • 条件分岐(IF, IFS)のネストが深すぎて解読不能になっていないか

    IF関数を5つも6つも重ねるのは、メンテナンス性を著しく下げる。IFS関数への書き換えや、マスタテーブルを作ってVLOOKUPで参照する方式への変更を検討すべきだろう。

  • エラー回避(IFERROR)が「不都合な真実」を隠していないか

    とりあえずIFERRORで空白にする人がいるが、これは危険だ。本来エラーが出るべき(データが存在しない、入力ミスがある)箇所まで隠してしまう。エラーの原因を特定した上で、最終的な出力見栄えのために使うのが正しい順序だ。

なぜ関数を「知っている」だけでは実務で通用しないのか

経理部門や営業管理の現場で、私は数多くの「高機能だが壊れやすいシート」を見てきました。関数をたくさん知っていることは武器になりますが、使いどころを間違えると自分自身やチームを苦しめる結果になります。

1. メンテナンス性は「美しさ」ではなく「コスト」の問題

自分が作った数式を、3ヶ月後の自分が読めるだろうか。あるいは、Excelに詳しくない後任者が修正できるだろうか。複雑な数式を一行で書くのは自己満足に近い。実務では、作業工程を分解して作業列を作り、誰が見ても計算過程がわかるようにすることが、結果として組織のコストを下げることになる。

2. データの「汚さ」を想定していない関数の脆弱性

システムからエクスポートしたCSVデータには、目に見えない制御文字や、数値に見える文字列が混じっている。これらをそのまま関数に放り込めば、当然エラーや誤集計が起きる。関数を組む前に、データのクレンジング(TRIM関数やCLEAN関数の活用)を行う工程が、チェックリストには不可欠。筆者も若手の頃、この工程を怠って数万件の売上集計をやり直した苦い経験がある。

3. スプレッドシート固有の挙動への無理解

GoogleスプレッドシートはExcelと似て非なるもの。特にARRAYFORMULAやQUERY関数といった、スプレッドシート独自の強力な関数は、Excelの常識で扱うとパフォーマンスを落としたり、予期せぬ動作を招いたりする。オンライン共有されている以上、複数人が同時に編集するリスクも考慮しなければならない。

Googleスプレッドシート 関数 一覧 - スプレッドシート固有の関数を入力する際の注意画面
スプレッドシート固有の関数を入力する際の注意画面

売上管理や経費精算で必須となる基本集計の確認ポイント

日々の売上入力や経費の集計において、ミスは許されない。数字のズレは信頼の失墜に直結するからだ。ここでは、集計の正確性を担保するためのチェック項目を深掘りする。

  • SUMIFS関数で複数の条件(期間、部署、担当者)を正しく指定しているか

    条件が一つならSUMIFで十分だが、実務では「4月の、営業1課の、田中さんの売上」というように複数条件が当たり前。引数の順番がSUMIFと異なるため、ここで混乱する人が多い。SUMIFS(合計対象範囲, 条件範囲1, 条件1, …)の順序を体に染み込ませよう。
    https://support.microsoft.com/ja-jp/office/sumifs-%E9%96%A2%E6%95%B0-c9e743f5-48e2-4863-9f7d-abd6433621cc

  • SUBTOTAL関数を使い、フィルター後の集計に対応しているか

    通常のSUM関数では、フィルターで隠した行の数値も合算されてしまう。現場で上司に「特定のカテゴリだけ表示して」と言われた際、合計値が変わらなくて焦るシーンはよくある。集計には9(合計)や109(非表示無視合計)の引数を使ったSUBTOTALを標準にすべきだ。

    Googleスプレッドシート 関数 一覧 - SUBTOTAL関数による動的な集計表示
    SUBTOTAL関数による動的な集計表示

  • COUNTIFS関数で「重複データ」のチェックを行っているか

    売上伝票番号が重複していないか。顧客リストに同じメールアドレスがないか。集計の前に、COUNTIF(A:A, A2) > 1 などの数式でフラグを立て、データの重複を排除する工程は、実務家の矜持と言える。

  • ROUND, ROUNDDOWN, ROUNDUPで端数処理を明示しているか

    表示形式で小数点以下を隠しているだけでは、内部数値は細かい端数を持ったままだ。これが積み重なると、合計値が1円、2円とずれていく。消費税計算や按分計算では、必ず四捨五入や切り捨ての関数を噛ませる必要がある。

大規模な顧客リストから必要な情報を瞬時に引き出す参照テクニック

数千、数万行に及ぶデータから、特定の情報を引っ張ってくる。この「参照」の正確さが、事務作業のスピードを決定づける。

  • XLOOKUP関数の導入により、従来のVLOOKUPの弱点を克服しているか

    「列を挿入すると数式が壊れる」「左側の列を参照できない」というVLOOKUPの宿命的な弱点を、XLOOKUPは解決してくれる。スプレッドシートでも利用可能になった今、移行を進めるべきだ。検索範囲と結果範囲を別々に指定できるメリットは計り知れない。

  • INDEX関数とMATCH関数のコンビネーションを使いこなせているか

    より高度な参照、例えば縦横のクロス集計から値を取り出すには、この組み合わせが最強だ。筆者も、複雑な料金表から価格を自動算出するシートを作る際は、必ずこのセットを使う。VLOOKUPよりも動作が軽く、壊れにくいのが特徴。

  • FILTER関数で「条件に合う行」を丸ごと抽出しているか

    単一の値を返すVLOOKUPとは異なり、条件に合致するデータをリスト形式で取り出せるのがFILTER関数。別シートに「特定の部署のメンバー一覧」を自動生成する際などに威力を発揮する。これを手作業でコピペしている時間は、今日からゼロにできるだろう。

  • INDIRECT関数で参照先を「動的」に切り替えていないか

    シート名を変数として扱い、参照するシートをドロップダウンリストで切り替える。拠点ごとの集計シートを切り替えて表示するようなダッシュボード作成には欠かせない。ただし、使いすぎるとシートが重くなるため、ここぞという場面に絞るのがコツだ。

    Googleスプレッドシート 関数 一覧 - INDIRECT関数によるシート切り替えの実装方法
    INDIRECT関数によるシート切り替えの実装方法

請求書作成や納期管理でミスを防ぐ日付・文字列操作の掟

事務作業の後半戦、請求書の発行や納期のトラッキングでミスが起きると、対外的なトラブルに発展する。日付計算と文字列の整形は、地味だが最も神経を使う部分だ。

  • EDATE関数で「1ヶ月後」を正確に算出しているか

    「今日の日付 + 30」で計算していないだろうか。これでは月によってズレが生じる。翌月末払い、翌々月末払いなどの計算にはEDATEが必須。筆者の経験では、支払日の計算ミスは会社の資金繰り表を狂わせる致命的なエラーになりかねない。

  • DATEDIF関数で期間計算(年齢・勤続年数)を行う際の単位指定は正しいか

    “Y”、”M”、”D”といった引数の使い分け。特に入社日から今日までの月数を出す際に、端数をどう扱うかは就業規則等と照らし合わせる必要がある。隠し関数的な扱いだが、人事労務の現場では主役級の関数だ。

  • TEXT関数で数値を「請求書番号」や「日付形式」に変換しているか

    セル内の日付データを他の文字列と結合すると、シリアル値(45458のような数字)になってしまう。「&」でつなぐ前に、TEXT(A1, “yyyy/mm/dd”)のように整形する手間を惜しんではいけない。

  • SUBSTITUTE関数で「不要なハイフンや空白」を除去しているか

    電話番号や郵便番号の形式を統一する際、一つひとつ手で直すのは時間の無駄だ。SUBSTITUTEを使い、一括で特定文字を置換・削除する。現場で見かけるミスで多いのは、全角ハイフンと半角マイナスの混同。これら両方に対応できるよう、関数を二重にかける工夫も検討したい。

条件分岐を使いこなし複雑な判定ロジックを自動化する思考法

ビジネスルールは常に複雑だ。「売上が100万円以上で、かつ入金が完了している場合はA、それ以外はB」といったロジックをどう組み立てるか。

  • AND関数とOR関数をIF関数の条件式に組み込んでいるか

    「かつ」「または」の条件を整理せず、IFの中にIFを書いてしまうと、論理構造が破綻しやすい。条件式の中でAND(条件1, 条件2)と書くことで、数式の見通しは格段に良くなる。
    https://support.microsoft.com/ja-jp/office/if-%E9%96%A2%E6%95%B0-69aed7c9-4e8a-4755-a9bc-aa8bbff73be2

  • IFS関数を使用して、優先順位に基づいた多分岐を行っているか

    評価基準がS, A, B, C…と続く場合、IFS関数が圧倒的に便利。先に書いた条件が優先されるという特性を理解していれば、数式は非常にシンプルになる。筆者が社内研修で最も「もっと早く知りたかった」と言われるのが、このIFS関数への乗り換えだ。

  • ISBLANKやISERRORで「空欄時の挙動」をコントロールしているか

    データがまだ入力されていないセルに「0」や「#N/A」が出ているのは、プロの仕事とは言えない。IF(ISBLANK(A1), “”, 計算式)といった、未入力時の処理(ブランク処理)を挟むだけで、シートの格は一段上がる。

  • SWITCH関数で特定の値を「ラベル」に変換しているか

    「1なら営業部、2なら経理部」というような、値の置き換え。VLOOKUPでマスタを作るほどでもない少数の選択肢なら、SWITCH関数がスマートだ。数式の中に直接「値」と「結果」を書き込めるため、可読性が高い。

    Googleスプレッドシート 関数 一覧 - SWITCH関数による部署コードの名称変換
    SWITCH関数による部署コードの名称変換

月次報告の直前に血の気が引く「計算ミス」を防ぐセルフチェック

どれだけ関数を駆使しても、最後に数字が間違っていれば意味がない。報告の5分前にでも実施できる、サバイバル・チェック術を紹介する。

まず、全体を眺めて「極端に大きな数字や小さな数字」がないかを確認する。これは関数のミスというより、入力単位のミス(千円単位を円単位で入力した等)を見つけるのに有効だ。次に、合計値が前月比や予算比で「常識的な範囲」に収まっているかを検証する。筆者は以前、前月比300%という数字を見て異常を察知し、VLOOKUPの参照範囲のズレを報告直前に発見したことがある。

もう一つの有効な手段は、複数の計算経路を用意すること。縦の合計と横の合計が一致するかを確認する「検算行・列」を設ける。あるいは、SUM関数とは別に、手計算や電卓で数箇所のサンプリング計算を行う。アナログな手法だが、これが最後の砦になる。

現場の修羅場で実際に起きた「関数トラブル」ワースト5

私の15年のキャリアの中で、実際に背筋が凍ったトラブルを紹介する。他山の石としてほしい。

1. 参照範囲が固定されておらず、コピーするたびに1行ずつズレていた

営業部の成績表を作成した際、目標値のセルを絶対参照($マーク)にし忘れた。1行目は正しいが、下の行に行くほど目標値が下の空白セルを参照し、全員が「目標達成率1000%」になってしまった。作成者は狂喜乱舞したが、上司への報告時に発覚し、こっぴどく叱られた。

2. 文字列として認識された「数字」が集計から漏れていた

経理ソフトからエクスポートしたデータの一部に、セルの左上に緑色の三角マーク(テキスト形式の数字)が付いていた。SUM関数は「数値」しか合計しないため、その行だけ無視されて合計金額が合わない。一晩かけて原因を探したが、答えは単なる「書式」の問題だった。

Googleスプレッドシート 関数 一覧 - 文字列の数字を数値に変換する一括操作
文字列の数字を数値に変換する一括操作

3. 循環参照の警告を無視し続けて、計算結果が「0」に固定された

合計欄の中に合計欄自身を含めてしまう「循環参照」。最初は小さな警告が出るだけだが、これを放置して複雑なシートを組んだ結果、どこを直しても計算が走らなくなった。結局、シートを最初から作り直す羽目になり、週末が潰れた。循環参照の警告は、火災報知器だと思って即座に対応すべきだ。

4. VLOOKUPの列番号を「数字」で直打ちし、列挿入でデータが崩壊

「=VLOOKUP(A1, B:E, 3, 0)」という数式。利便性のために列を1列追加した瞬間、参照先が「本来の3列目」ではなくなり、別の項目が表示されるようになった。これが請求書の「単価」列で起きたため、誤請求を出す直前で止めることになった。COLUMN関数を使って列番号を動的に取得すべきだった。

5. ARRAYFORMULAが展開される場所に「手入力データ」があり、全行消えた

スプレッドシート独自のARRAYFORMULA関数。1行書けば全行に反映される魔法の関数だが、展開先のセルのどこか一つにでも手入力された値やスペースがあると、エラーで全行が表示されなくなる。共有シートで、誰かが良かれと思って一行だけ修正したために、全データが見えなくなりパニックになった例だ。

メンテナンス性を向上させる「美しい数式」の書き方

「動けばいい」という考え方は、業務効率化の敵だ。後から見直しやすい、メンテナンス性の高いシートを作るための作法がある。

まず、数式の中に「生数字」を書き込まない。消費税率10%を掛ける際、数式に直に「1.1」と書くのではなく、設定用セルを用意して「B1」のように参照させる。税率が変わった際、数千箇所の数式を直して回るのか、1つのセルを書き換えるだけで終わるのか。この差が、数年後の自分への優しさになる。

次に、改行とスペースの活用。スプレッドシートの数式バーでは、Ctrl + Enterで改行ができる。長いIFS関数やQUERY関数を書く際は、引数ごとに改行を入れてインデントをつけることで、論理構造が一目でわかるようになる。これは筆者が社内講師を務める際、最も重要視して伝えているテクニックだ。

Googleスプレッドシート 関数 一覧 - 長い数式を改行して可読性を高めるテクニック
長い数式を改行して可読性を高めるテクニック

チームでスプレッドシートを共有する際に徹底すべき運用ルール

スプレッドシートの最大の利点は共同編集だが、それが最大の弱点にもなり得る。チームで運用する際のチェックリストだ。

  • 数式が入っているセルに「保護」または「色付け」をしているか

    「消さないでください」と口で言っても無駄だ。入力していいセルは薄い黄色、数式が入っているセルは網掛けにする、などの視覚的なルールを徹底する。必要であれば、シートの保護機能で編集不可に設定する。

  • 「データの入力規則」を使い、入力内容を制限しているか

    半角、全角、表記揺れ。これらを後から関数で修正するのは非効率。最初からプルダウンで選ばせるか、条件に合わない入力は弾くように設定する。データの入口を絞ることが、関数の負担を減らす最短距離だ。

  • 更新履歴(変更履歴)の確認方法をチーム全員が知っているか

    「誰が、いつ、どこを変えたか」がわかるのがスプレッドシートの強み。計算結果がおかしくなった際、過去のバージョンに戻すスキルは、現場の混乱を最小限に抑えるために必須と言える。

  • 大容量シートの場合、IMPORTRANGEで「データ」と「分析」を分けているか

    一つのファイルにすべてを詰め込むと動作が重くなる。元データ専用のファイルと、それを参照して集計するファイル。ファイルを分けることで権限管理も容易になり、セキュリティも向上する。

現場の悩みにお答えするスプレッドシート活用FAQ

実務家としてよく受ける質問をまとめた。

Q. Excelで使えていた関数がスプレッドシートで使えないのですが?
A. 大半は共通しているが、Excelの一部のマクロ連動関数などは動作しない。逆にスプレッドシートにしかない強力な関数(QUERY, IMPORTXML等)もある。まずは、この「Googleスプレッドシート 関数 一覧」をブックマークして、互換性を確認してほしい。
https://support.microsoft.com/ja-jp/office/vlookup-%E9%96%A2%E6%95%B0-ad611a9d-1dab-4112-9021-ed9b7d9f341d
Q. 関数を使いすぎて動作が非常に重いです。解消法はありますか?
A. VLOOKUPの大量使用や、不要な行までARRAYFORMULAを回しているのが原因であることが多い。集計済みの古いデータは「値として貼り付け」て数式を消す、あるいはQUERY関数で集計を一本化するなどの対策が有効だ。
Q. エラーが出たときにどこから手をつければいいかわかりません。
A. 「数式の検証」機能(Excel)に近いものとして、スプレッドシートでは数式バーでカーソルを合わせると、各引数の計算結果が表示される。これを使って、どのパーツでエラーが起きているかを特定するのが早道だ。
Q. 正規表現(REGEXMATCH等)は覚えたほうがいいですか?
A. 一般的な事務なら不要だが、大量のメールアドレスや複雑な商品コードの抽出があるなら、覚えると神のような速さで仕事が終わる。余力があれば挑戦してほしいが、まずは基本関数の組み合わせを完璧にするのが先決だ。

手作業からの脱却がもたらす「考える時間」の確保

関数を使いこなし、このチェックリストを実践することで得られるのは、単なる「作業時間の短縮」ではない。これまでコピペや検算に費やしていた膨大なエネルギーを、その数字が何を意味しているのか、次にどのような手を打つべきかという「思考」に向けることができるようになる。

15年前、電卓を片手に夜遅くまで集計していた私に伝えたいのは、道具を正しく使えば仕事はもっとクリエイティブになれるということ。関数は、あなたの仕事を奪うものではなく、あなたを単純作業から解放し、専門家としての価値を高めてくれるパートナーだ。

まずは、明日作成するシートのVLOOKUP関数に、絶対参照の「$」がついているか、そこからチェックを始めてみてはどうだろうか。その小さな一歩が、ミスのない、そして信頼される仕事への第一歩になる。

コメント

タイトルとURLをコピーしました