ログイン
セクション
チャプター

関数の活用

実務で頻繁に使うExcel関数を、構文と演習で体系的に学びます

エクセルの関数は、「習うより慣れよ」です。
ドリル形式で実践を重ねることで、関数の使い方をマスターしましょう。
以下の順序で関数を紹介し、実践的なスキルを身につけていきます。

項目名重要度内容
絶対参照と相対参照★★★関数を使う上での基礎となる概念を学びます。
VLOOKUP関数データ検索の基本となる関数です。後ほどINDEX関数とMATCH関数に置き換えて使うのですが、導入としてVLOOKUP関数を学びます。
IF関数条件分岐に使います。
IFERROR関数エラー処理の方法を学びます。
INDEX関数とMATCH関数★★★より高度なデータ検索方法を学びます。
SUMIFS関数★★★条件付き集計の方法を学びます。
TEXT関数データ形式の変換方法を学びます。
ROUND関数数値の丸め方を制御する方法を学びます。
INDIRECT関数動的なセル参照の方法を学びます。シートが100枚あって、エクセルだけで(VBAも使わないで)1時間以内で集計しないといけないなど特殊な環境下で使うことがあります。

これらの関数を順に学ぶことで、基本から応用まで段階的にスキルアップしていきます。実践を通じて各関数の使い方に慣れることが、エクセルマスターへの近道です。

絶対参照と相対参照

セル参照には2種類あります。相対参照A1)は、数式をコピーすると参照先が自動的にずれます。絶対参照$A$1)は、コピーしても参照先が固定されたままになります。単価・税率など「ずらしたくないセル」には $ を付けて固定するのがポイントです。

下のように 単価が B1 の1セルに固定 され、A4〜A6 に数量が入っているとします。B4 に =A4*$B$1 と書いて B5, B6 にコピーすると、A列だけがずれて、$B$1 は固定のまま になります(青=相対参照(コピー時にずれる) / 緑=絶対参照(コピーしても固定))。

シート: 売上計算
AB
1単価100
2
3数量売上
45500
5101,000
6151,500

B1(緑)= 絶対参照したい固定セル。A4〜A6(青)= コピーするたびにずらしたい相対参照セル。

B4 を作って、B5, B6 にコピーしたとき数式がどう変わるか
B4: =A4*$B$1 → 5×100 = 500
B5: =A5*$B$1 → 10×100 = 1,000 (A4→A5に自動で1行下にずれた、$B$1はそのまま)
B6: =A6*$B$1 → 15×100 = 1,500 (A4→A6に自動で2行下にずれた、$B$1はそのまま)
= A4 のように $ なし=相対参照。コピー先の位置に応じて参照が自動でずれる。 = $B$1 のように $ で囲む=絶対参照。どこにコピーしても B1 を見続ける。

単価が固定でも $ を付け忘れて =A4*B1 と書くと、B5 にコピーしたとき =A5*B2 になり、B2 は空セルなので結果が0になって壊れます。F4 キーで $ のオン/オフを切り替えられます。

ページ概要
絶対参照と相対参照エクセルの関数を使いこなすための基礎となる相対参照と絶対参照の違いを解説します。基本的な概念から実践的な使い方まで学び、複雑な計算も効率的に行えるようになります。
演習_01_絶対参照の使い方構成比率の計算を例に、F4キーを使った絶対参照($記号)の設定方法と、数式のコピー&ペーストによる効率的な作業手順を学びます。
演習_02_行だけ・列だけの絶対参照の使い方F4キーを使って行または列のみを固定する絶対参照の応用的な使い方を学びます。価格表マトリックスの作成を通じて、実践的なスキルを身につけます。

VLOOKUP関数

VLOOKUP関数は、指定した範囲の 左端の列 を縦方向に検索し、ヒットした行の指定列の値を返す関数です。商品コードから商品名・金額を引っ張ってくるような「マスタ参照」で使います。

fxVLOOKUP 関数の構文
=VLOOKUP(検索する値, 検索範囲, 列番号, 検索の型)
検索する値
検索したい「値」を指定します。
検索範囲
検索する値が含まれる「セル範囲」を指定します。
列番号
結果として返す値がある列の番号です。範囲の最初の列は1として数えます。
検索の型
近似値検索を行う場合はTRUEまたは省略、完全一致検索の場合はFALSEを指定します。

下のような 商品マスタ シート(A列=商品コード、B列=商品名、C列=金額)から、別の 作業 シートに書いた検索値「A001」に対応する金額を引っ張ってくる例です。色は数式の引数と参照範囲の対応を表しています(青=検索値 / 緑=検索範囲 / ピンク=列番号)。

シート: 商品マスタ
ABC
1商品コード商品名金額
2A001リンゴ100
3A002バナナ200
4A003みかん300

緑枠 = 検索範囲 商品マスタ!$A$2:$C$4(VLOOKUPの第2引数)

シート: 作業
EF
1検索値VLOOKUP の結果
2A001100
セル F2 に入っている数式
=VLOOKUP(E2, 商品マスタ!$A$2:$C$4, 3, FALSE)
= 検索値セル E2(第1引数) = 検索範囲(第2引数) ピンク = 列番号「3」=C列=金額(第3引数)。最後の FALSE は完全一致を意味します

E2(青)の検索値「A001」が商品マスタの A列で見つかると、その行の3列目(C列=金額)の値「100」が F2 に返ります。検索値を「A002」に変えれば「200」、「A003」に変えれば「300」が返ります。

ページ概要
VLOOKUP関数VLOOKUP関数の基礎から応用まで解説。大量データの検索・抽出を効率化するテクニックを学びます。
演習_01_導入-完全一致検索完全一致検索の基本を学び、初心者でも使えるデータ検索テクニックを習得します。
演習_02_参照範囲にバッファを持たせておく将来のデータ追加に備えた、参照範囲の設定方法を学びます。
演習_03_MATCH関数による列の指定VLOOKUP関数とMATCH関数を組み合わせた柔軟な検索方法を学びます。
演習_04_INDEX-MATCH関数による代替より柔軟で高速なINDEX-MATCH関数によるデータ検索方法を学びます。
演習_05_近似値検索近似値検索機能を使った範囲データの処理方法を学びます。

IF関数

IF関数は、条件式が真か偽かによって返す値を切り替える、条件分岐のための関数です。「金額が10,000以上なら "高額"、それ未満なら "通常"」のように、セルごとに違うラベルを表示したいときに使います。

fxIF 関数の構文
=IF(条件式, 真の場合, 偽の場合)
条件式
評価する論理式または条件です。この式が真(TRUE)を返せば、関数は第二引数の値を返します。偽(FALSE)を返せば、第三引数の値を返します。
真の場合
条件式が真のときに関数が返す値・内容を指定します。
偽の場合
条件式が偽のときに関数が返す値・内容を指定します。

下のような 売上 シートで、B列の金額に応じて C列に「高額」または「通常」を表示する例です。色は数式と参照の対応を表しています(青=条件式の中で参照するセル / ピンク=真の値・偽の値)。

シート: 売上
ABC
1取引ID金額(円)判定
2T0115,000高額
3T028,000通常
4T0322,000高額
セル C2 に入っている数式(C3, C4 にコピーするとそれぞれ B3, B4 を見る)
=IF(B2>=10000, "高額", "通常")
= 条件式が見るセル B2(第1引数) 濃いピンク = 条件が真のときの戻り値「高額」(第2引数) 薄いピンク = 条件が偽のときの戻り値「通常」(第3引数)

B2 の値「15,000」が10,000以上なので、条件式が真となり、第2引数の「高額」が C2 に返ります。B3 は「8,000」で条件式が偽となり、第3引数の「通常」が C3 に返ります。

ページ概要
IF関数IF関数の基本構文と論理式の使い方、条件分岐の設計方針を学びます。
演習_01_合格/不合格判定得点に応じて「合格」「不合格」を返す基本的なIF関数の使い方を練習します。
演習_02_ピボットテーブル→DB形式変換ピボット形式のデータをIF関数を使ってデータベース形式に変換する方法を学びます。

IFERROR関数

IFERROR関数は、計算式が #N/A#DIV/0! などのエラーになったときに、代わりの値を返す関数です。VLOOKUP の結果が見つからない場合に「該当なし」と表示する、ゼロ除算で空文字を返す、といった用途で使います。

fxIFERROR 関数の構文
=IFERROR(計算式, エラー時に返す値)
計算式
エラーが発生する可能性のある計算式を指定します。
エラー時に返す値
計算式がエラーのときに関数が返す値・内容を指定します。

VLOOKUP の検索値がマスタに存在しないと #N/A エラーになります。これを IFERROR で囲んで「該当なし」と表示する例です(青=VLOOKUP式(第1引数) / ピンク=エラー時に返す値(第2引数))。

シート: 商品マスタ
AB
1商品コード金額
2A001100
3A002200
4A003300
シート: 作業(IFERROR で囲んだとき / 囲まないとき)
EF (IFERROR なし)G (IFERROR で囲む)
1検索値VLOOKUP 単体IFERROR + VLOOKUP
2A001100100
3X999#N/A該当なし
セル G3 に入っている数式(IFERRORで囲んだ版)
=IFERROR(VLOOKUP(E3, 商品マスタ!$A$2:$B$4, 2, FALSE), "該当なし")
= エラーの可能性がある計算式(第1引数)。中の VLOOKUP は X999 がマスタにないので #N/A を返す。 ピンク = エラー時に返す値「該当なし」(第2引数)。

F列のように VLOOKUP 単体だと検索値が見つからないとき #N/A が表示されますが、G列のように IFERROR で囲むと、エラーの代わりに「該当なし」(ピンク)が返ります。エラーが画面に出るのを抑えたいときに使います。

ページ概要
IFERROR関数IFERROR関数の構文と、N/A・DIV/0!などのエラー値を適切に処理する方法を解説します。
演習_01_連結精算表エラー回避連結精算表で発生するエラーをIFERROR関数で適切に処理する実務的なテクニックを学びます。

INDEX関数とMATCH関数

INDEX関数は、指定した範囲の中の「○行目・○列目」の位置にある値を返す関数です。MATCH関数は、指定した値が範囲の中で何番目にあるかを返す関数です。

2つを組み合わせると VLOOKUP の上位互換になり、左方向の検索・列挿入に強い検索・複合キー検索が可能になります。MATCH でセルの位置を取得し、INDEX でその位置の値を引く、という使い方をします。

fxINDEX 関数の構文
=INDEX(配列, MATCH関数(行番号), MATCH関数(列番号))
配列
値を取得したいセル範囲
MATCH関数(行番号)
返したい値の行番号を返すMATCH関数を使う
MATCH関数(列番号)
返したい値の列番号(省略可能。1列の配列の場合は不要)を返すMATCH関数を使う
fxMATCH 関数の構文
=MATCH(検索値, 範囲, 検索タイプ)
検索値
探したい値を指定します。
範囲
検索を行う範囲(1行または1列)を指定します。
検索タイプ
主に完全一致タイプを使いますので、`0`と指定します。 1または省略:昇順で検索(既定値)。0:完全一致。-1:降順で検索。

VLOOKUP と同じ「商品コードから金額を引く」例を、INDEX-MATCH で書き換えてみます。VLOOKUP の 列番号「3」(魔法数字)の代わりに、列名そのもの を範囲として指定するのがポイントです(青=検索値 / 緑=検索列・返却列)。

シート: 商品マスタ
ABC
1商品コード
(検索列)
商品名金額
(返却列)
2A001リンゴ100
3A002バナナ200
4A003みかん300

A列(緑)= 検索列、C列(緑)= 返却列。MATCH が A列の中で「A002」が 2番目 にあると返し、INDEX が C列の 2番目 の値「200」を返す。

シート: 作業
EF
1検索値INDEX-MATCH の結果
2A002200
セル F2 に入っている数式
=INDEX(商品マスタ!$C$2:$C$4, MATCH(E2, 商品マスタ!$A$2:$A$4, 0))
= 検索列(A列)と返却列(C列)。VLOOKUP と違って 列名そのもの で指定するため、間に列が挿入されても壊れません。 = 検索値 E2(=A002)。MATCH が A列の中で何番目にあるかを調べ、INDEX がその位置の C列の値を返します。

MATCH(E2, A:A, 0) が「A002 は2番目」と返し、INDEX(C:C, 2) が C列の2番目の値「200」を返します。VLOOKUP のような「列番号」を覚える必要がなく、列の追加・削除に強い書き方です。

ページ概要
INDEX/MATCH関数INDEX関数とMATCH関数の組み合わせを徹底解説。VLOOKUPの限界を超える柔軟な検索方法を学びます。
演習_01_行単一条件1つの条件で行を検索する基本的なINDEX-MATCH関数の使い方を練習します。
演習_02_行・列単一条件行と列の両方の条件で値を取得する応用的な使い方を学びます。
演習_03_列複数条件複数の列条件を組み合わせて検索する高度なテクニックを習得します。
演習_04_行・列複数条件行と列の両方で複数条件を扱う、最も柔軟な検索方法を学びます。
演習_05_近似値検索INDEX-MATCH関数による近似値検索の活用方法を学びます。

SUM関数

指定した範囲の合計を求める、最も基本的な関数です。範囲を引数に渡すだけで使えます。

fxSUM 関数の構文
=SUM(数値1, [数値2], ...)
数値1
合計したい数値や数値が入力されたセル参照を指定します。
[数値2]
数値だけでなく、数式や他の関数の結果も指定できます。
...
引数は1つ以上指定する必要があり、最大255個まで指定できます。

下の 売上 シートで、D列の金額をすべて合計する例です(緑=合計範囲)。

シート: 売上
ABCD
1日付商品金額
24/34月リンゴ100
34/154月バナナ200
45/85月リンゴ150
55/225月バナナ250
6合計700
セル D6 に入っている数式
=SUM(D2:D5) → 700
= 合計したい範囲(D2:D5)。100 + 200 + 150 + 250 = 700。

条件分岐は不要で、ただ全部足したいだけのときに使います。たまに合計範囲に文字列セルが混ざっていても、SUM は文字列を無視して数値だけを合計します。

SUMIF関数

1つの条件を満たすセルだけを合計する関数です。ただし、SUMIFS関数で完全に置き換えられるため、実務では SUMIFS だけ覚えておけば十分です。SUMIF を見かけたとき「読める」状態になっておく目的で確認します。

fxSUMIF 関数の構文
=SUMIF(範囲, 検索条件, [合計範囲])
範囲
検索条件の対象となるセルの範囲を指定します。
検索条件
合計する条件を指定します。文字列の場合は””で囲みます。
[合計範囲]
合計する数値の範囲を指定します。省略した場合は「範囲」が合計範囲となります。

先ほどと同じ 売上 シートで、「リンゴ」の行だけを合計する例です(緑=合計範囲・条件範囲 / 青=条件値)。

シート: 売上
ABCD
1日付商品金額
24/34月リンゴ100
34/154月バナナ200
45/85月リンゴ150
55/225月バナナ250

緑(左)= 条件範囲 C列(商品名)。緑(右)= 合計範囲 D列(金額)。

シート: 集計
FG
1対象商品合計金額
2リンゴ250
セル G2 に入っている数式
=SUMIF(売上!$C$2:$C$5, F2, 売上!$D$2:$D$5) → 250
緑(第1引数) = 条件をチェックする範囲(C列=商品名)。 青(第2引数) = 条件値(F2 = "リンゴ")。 緑(第3引数) = 合計する範囲(D列=金額)。
C列の中で「リンゴ」と一致した行(D2 と D4)の金額(100 + 150)が合計され、250 が返ります。
SUMIFS で書き換えても同じ結果になる
=SUMIFS(売上!$D$2:$D$5, 売上!$C$2:$C$5, F2) → 250
SUMIFS は引数の順番が違うだけで(合計範囲が先頭)、1条件でも問題なく使えます。覚える関数を1つにまとめられて、メンテも楽になります。

Ctrl+[ で数値検証できるかどうかの違い(SUMIFSを推す最大の理由)

実務で集計を書いたあと、その合計値が正しいかを必ず検証します。このとき Ctrl+[(参照元のセルにジャンプ)が決定的に重要になります。

SUMIF の場合:第1引数が「条件範囲」(文字列側)
=SUMIF(売上!$C$2:$C$5, F2, 売上!$D$2:$D$5)
セルを選択して Ctrl+[ を押すと、第1引数の C列(商品名の文字列) にジャンプしてしまいます。集計対象の 数値(D列)に飛べない ので、合計値の根拠を辿る検証が一段で止まります。
SUMIFS の場合:第1引数が「合計範囲」(数値側)
=SUMIFS(売上!$D$2:$D$5, 売上!$C$2:$C$5, F2)
Ctrl+[ でいきなり 集計対象の数値列(D列) にジャンプできます。そこからさらに参照元(取引データの元帳など)へ Ctrl+[ を続ければ、数値の検証を連続で進められるのが SUMIFS の最大の強みです。

SUMIF は読めれば十分。書くときは SUMIFS で統一 しましょう。「合計範囲が先頭」という引数順は、覚えやすさだけでなく Ctrl+[ で数値の根拠を追えるかどうか、という実務上の検証スピードに直結します。

SUMIFS関数

複数の条件をすべて満たすセルを合計する関数です。これが本来の使いどころで、1条件でも複数条件でも、SUMIFS だけで対応できます。実務での集計はほぼこの関数で行います。

fxSUMIFS 関数の構文
=SUMIFS(合計範囲, 条件範囲1, 条件1, [条件範囲2], [条件2])
合計範囲
合計する数値の範囲を指定します。
条件範囲1
条件1に対する範囲を指定します。
条件1
条件1を指定します。
[条件範囲2]
任意です。条件2に対する範囲を指定します。
[条件2]
任意です。条件2を指定します。

先ほどと同じ 売上 シートで、「5月」かつ「リンゴ」の2条件をすべて満たす行だけを合計する例です(緑=合計範囲・条件範囲 / 青=条件値)。

シート: 売上
ABCD
1日付商品金額
24/34月リンゴ100
34/154月バナナ200
45/85月リンゴ150
55/225月バナナ250

緑(B列)= 条件範囲1(月)、緑(C列)= 条件範囲2(商品)、緑(D列)= 合計範囲。ピンク = 両方の条件を満たした唯一の行(5月かつリンゴ → 150)。

シート: 集計
FGH
1商品合計金額
25月リンゴ150
セル H2 に入っている数式
=SUMIFS(売上!$D$2:$D$5, 売上!$B$2:$B$5, F2, 売上!$C$2:$C$5, G2) → 150
緑(第1引数) = 合計範囲(D列=金額)。
緑(第2引数) + 青(第3引数) = 1組目の条件(B列で F2="5月")。
緑(第4引数) + 青(第5引数) = 2組目の条件(C列で G2="リンゴ")。
両方を満たす行(4行目のみ)の金額 150 が返ります。

引数の順番は 合計範囲が先頭、その後 「条件範囲, 条件値」のペア を必要なだけ並べます。「条件範囲1, 条件1, 条件範囲2, 条件2, ...」と覚えましょう。条件は最大127組まで指定できます。

ページ概要
SUMIFS関数SUM・SUMIF・SUMIFS関数の使い分けと、PIVOTテーブル代替としての活用方法を解説します。
演習_01_月次売上数量集計SUMIFS関数を使って月次の売上数量を集計する実務的な演習です。

TEXT関数

TEXT関数は、数値や日付に書式コードを適用して、指定した形式の 文字列 に変換する関数です。「2026/5/4」を「2026年5月4日」、1,000 を「¥1,000」、0.85 を「85.0%」のように見た目を整えるために使います。戻り値は文字列なので、計算には使えなくなる点に注意してください。

fxTEXT 関数の構文
=TEXT(, 書式)
書式を適用したい数値、日付、時刻などの値。セル参照や数式、定数を指定できます。
書式
結果として得たい表示形式を指定する文字列。ダブルクォーテーション(” ”)で囲む必要があります。

数値・日付を別の表示形式の 文字列 に変換する例です。第2引数に書式コードを指定するのがポイントです(青=変換元の値 / ピンク=書式コード)。

シート: 書式変換
ABC
1変換元の値書式コードTEXT関数の結果
22026/5/4"yyyy年m月d日"2026年5月4日
31000"¥#,##0"¥1,000
40.85"0.0%"85.0%
52026/5/4"aaaa"月曜日
セル C2〜C5 に入っている数式
C2: =TEXT(A2, "yyyy年m月d日") → 2026年5月4日
C3: =TEXT(A3, "¥#,##0") → ¥1,000
C4: =TEXT(A4, "0.0%") → 85.0%
C5: =TEXT(A5, "aaaa") → 月曜日
= 変換元の値(第1引数)。 ピンク = 書式コード(第2引数。ダブルクォーテーションで囲む)。 yyyy=西暦4桁、m=月、d=日、aaaa=曜日(フル)、#,##0=3桁区切り、0.0%=小数1桁の%。

TEXT関数の戻り値は 文字列 なので、計算には使えなくなります。表示用(レポートに「2026年5月4日」と書きたい等)に使います。セル自体の表示形式を変えるだけで済む場合は、TEXT を使わずセル書式設定で行う方がよいです。

ページ概要
TEXT関数TEXT関数の構文と、数値・日付・時刻の書式設定パターンを解説します。

ROUND関数

ROUND関数は、数値を指定した桁数で四捨五入する関数です。ROUNDUP(切り上げ)・ROUNDDOWN(切り捨て)と3兄弟で、第2引数の桁数(正=小数点以下/0=整数/負=整数部)の使い分けがポイントです。経理では消費税の端数処理など、ROUNDDOWN の出番が多くなります。

fxROUND 関数の構文
=ROUND(数値, 桁数)
数値
四捨五入する数値またはセル参照
桁数
四捨五入する桁数。正の値は小数点以下の桁数、負の値は整数部の桁数を表す。0の場合は整数に丸める。
fxROUNDUP 関数の構文
=ROUNDUP(数値, 桁数)
数値
切り上げる数値またはセル参照
桁数
切り上げる桁数。正の値は小数点以下の桁数、負の値は整数部の桁数を表す。0の場合は整数に丸める。
fxROUNDDOWN 関数の構文
=ROUNDDOWN(数値, 桁数)
数値
切り捨てる数値またはセル参照
桁数
切り捨てる桁数。正の値は小数点以下の桁数、負の値は整数部の桁数を表す。0の場合は整数に丸める。

元の値 1234.567ROUND / ROUNDUP / ROUNDDOWN でそれぞれ桁数を変えて丸めた対比です。桁数の符号がポイント(青=丸める数値 / ピンク=桁数)。

シート: 丸め比較
ABCDE
1元の値関数桁数結果意味
1234.567ROUND21234.57小数2桁で四捨五入
1234.567ROUND01235整数(1の位)で四捨五入
1234.567ROUND-1123010の位で四捨五入
1234.567ROUND-21200100の位で四捨五入
1234.567ROUNDUP01235整数で常に切り上げ
1234.567ROUNDDOWN01234整数で常に切り捨て
D列の数式(一例)
D2: =ROUND(A2, 2) → 1234.57
D4: =ROUND(A4, -1) → 1230
D6: =ROUNDUP(A6, 0) → 1235
= 丸める数値(第1引数)。 ピンク = 桁数(第2引数)。正なら小数点以下、0なら整数、負なら整数部の桁を表します。

ROUND は四捨五入、ROUNDUP は常に切り上げ、ROUNDDOWN は常に切り捨て。経理では消費税の端数処理など「切り捨て一択」のケースが多いので、ROUNDDOWN の出番が一番多いです。

ページ概要
ROUND関数ROUND・ROUNDUP・ROUNDDOWNの使い分けと、計算前後で四捨五入するタイミングの注意点を解説します。

INDIRECT関数

INDIRECT関数は、文字列を「セル参照」として解釈する関数です。シート名を別セルに書いておいて、それを使って動的に =SUM(4月!D:D) のような参照を組み立てる、といった使い方ができます。便利ですが、数式が壊れやすい・Ctrl+[ でジャンプできないなどのデメリットがあるため、多用は禁物です。

fxINDIRECT 関数の構文
=INDIRECT(参照文字列, [参照形式])
参照文字列
参照したいセルのアドレスを文字列で指定します。A1形式、R1C1形式、または名前を指定できます。
[参照形式]
省略可能です。「TRUE」を指定すると、参照形式がA1形式になり、「FALSE」と指定する場合は参照形式がR1C1形式になります。

4月シートと 5月シートに売上データがあるとして、集計シートの A列に書いた月名(文字列)から、その月のシートの D列を SUM する例です。INDIRECT が 「文字列」を「セル参照」に変換 するのがポイントです(青=シート名の文字列セル / ピンク=INDIRECTで組み立てる参照文字列)。

シート: 4月(5月シートも同構造)
AD
1商品金額
2リンゴ100
3バナナ200

5月シートも同じ構造で、リンゴ150・バナナ250 が入っているとします(合計400)

シート: 集計
AB
1売上合計
24月300
35月400
セル B2 に入っている数式
=SUM(INDIRECT(A2&"!D:D"))
= A2 セルの中身 "4月"ピンク = 連結する文字列 "!D:D"
A2 と "!D:D"& で連結すると "4月!D:D" という文字列ができ、INDIRECT がこれを 4月シートの D列 という実際のセル参照に変換。SUM がその合計を計算します。

B2 をコピーして B3 に貼ると、A3=「5月」を見て自動的に 5月シートの D列 を集計するように動的に切り替わります。これが INDIRECT の強み。ただし数式が壊れやすい・Ctrl+[ でジャンプできない、というデメリットもあるため多用は禁物です。

ページ概要
INDIRECT関数INDIRECT関数の構文と、便利だが多用すべきでない理由・使いどころを解説します。
演習_01_複数シート集計INDIRECT関数で複数シートのデータを1つのシートに集約する実務的な方法を練習します。

関数の活用

実務で頻繁に使うExcel関数を、構文と演習で体系的に学びます

エクセルの関数は、「習うより慣れよ」です。
ドリル形式で実践を重ねることで、関数の使い方をマスターしましょう。
以下の順序で関数を紹介し、実践的なスキルを身につけていきます。

項目名重要度内容
絶対参照と相対参照★★★関数を使う上での基礎となる概念を学びます。
VLOOKUP関数データ検索の基本となる関数です。後ほどINDEX関数とMATCH関数に置き換えて使うのですが、導入としてVLOOKUP関数を学びます。
IF関数条件分岐に使います。
IFERROR関数エラー処理の方法を学びます。
INDEX関数とMATCH関数★★★より高度なデータ検索方法を学びます。
SUMIFS関数★★★条件付き集計の方法を学びます。
TEXT関数データ形式の変換方法を学びます。
ROUND関数数値の丸め方を制御する方法を学びます。
INDIRECT関数動的なセル参照の方法を学びます。シートが100枚あって、エクセルだけで(VBAも使わないで)1時間以内で集計しないといけないなど特殊な環境下で使うことがあります。

これらの関数を順に学ぶことで、基本から応用まで段階的にスキルアップしていきます。実践を通じて各関数の使い方に慣れることが、エクセルマスターへの近道です。

絶対参照と相対参照

セル参照には2種類あります。相対参照A1)は、数式をコピーすると参照先が自動的にずれます。絶対参照$A$1)は、コピーしても参照先が固定されたままになります。単価・税率など「ずらしたくないセル」には $ を付けて固定するのがポイントです。

下のように 単価が B1 の1セルに固定 され、A4〜A6 に数量が入っているとします。B4 に =A4*$B$1 と書いて B5, B6 にコピーすると、A列だけがずれて、$B$1 は固定のまま になります(青=相対参照(コピー時にずれる) / 緑=絶対参照(コピーしても固定))。

シート: 売上計算
AB
1単価100
2
3数量売上
45500
5101,000
6151,500

B1(緑)= 絶対参照したい固定セル。A4〜A6(青)= コピーするたびにずらしたい相対参照セル。

B4 を作って、B5, B6 にコピーしたとき数式がどう変わるか
B4: =A4*$B$1 → 5×100 = 500
B5: =A5*$B$1 → 10×100 = 1,000 (A4→A5に自動で1行下にずれた、$B$1はそのまま)
B6: =A6*$B$1 → 15×100 = 1,500 (A4→A6に自動で2行下にずれた、$B$1はそのまま)
= A4 のように $ なし=相対参照。コピー先の位置に応じて参照が自動でずれる。 = $B$1 のように $ で囲む=絶対参照。どこにコピーしても B1 を見続ける。

単価が固定でも $ を付け忘れて =A4*B1 と書くと、B5 にコピーしたとき =A5*B2 になり、B2 は空セルなので結果が0になって壊れます。F4 キーで $ のオン/オフを切り替えられます。

ページ概要
絶対参照と相対参照エクセルの関数を使いこなすための基礎となる相対参照と絶対参照の違いを解説します。基本的な概念から実践的な使い方まで学び、複雑な計算も効率的に行えるようになります。
演習_01_絶対参照の使い方構成比率の計算を例に、F4キーを使った絶対参照($記号)の設定方法と、数式のコピー&ペーストによる効率的な作業手順を学びます。
演習_02_行だけ・列だけの絶対参照の使い方F4キーを使って行または列のみを固定する絶対参照の応用的な使い方を学びます。価格表マトリックスの作成を通じて、実践的なスキルを身につけます。

VLOOKUP関数

VLOOKUP関数は、指定した範囲の 左端の列 を縦方向に検索し、ヒットした行の指定列の値を返す関数です。商品コードから商品名・金額を引っ張ってくるような「マスタ参照」で使います。

fxVLOOKUP 関数の構文
=VLOOKUP(検索する値, 検索範囲, 列番号, 検索の型)
検索する値
検索したい「値」を指定します。
検索範囲
検索する値が含まれる「セル範囲」を指定します。
列番号
結果として返す値がある列の番号です。範囲の最初の列は1として数えます。
検索の型
近似値検索を行う場合はTRUEまたは省略、完全一致検索の場合はFALSEを指定します。

下のような 商品マスタ シート(A列=商品コード、B列=商品名、C列=金額)から、別の 作業 シートに書いた検索値「A001」に対応する金額を引っ張ってくる例です。色は数式の引数と参照範囲の対応を表しています(青=検索値 / 緑=検索範囲 / ピンク=列番号)。

シート: 商品マスタ
ABC
1商品コード商品名金額
2A001リンゴ100
3A002バナナ200
4A003みかん300

緑枠 = 検索範囲 商品マスタ!$A$2:$C$4(VLOOKUPの第2引数)

シート: 作業
EF
1検索値VLOOKUP の結果
2A001100
セル F2 に入っている数式
=VLOOKUP(E2, 商品マスタ!$A$2:$C$4, 3, FALSE)
= 検索値セル E2(第1引数) = 検索範囲(第2引数) ピンク = 列番号「3」=C列=金額(第3引数)。最後の FALSE は完全一致を意味します

E2(青)の検索値「A001」が商品マスタの A列で見つかると、その行の3列目(C列=金額)の値「100」が F2 に返ります。検索値を「A002」に変えれば「200」、「A003」に変えれば「300」が返ります。

ページ概要
VLOOKUP関数VLOOKUP関数の基礎から応用まで解説。大量データの検索・抽出を効率化するテクニックを学びます。
演習_01_導入-完全一致検索完全一致検索の基本を学び、初心者でも使えるデータ検索テクニックを習得します。
演習_02_参照範囲にバッファを持たせておく将来のデータ追加に備えた、参照範囲の設定方法を学びます。
演習_03_MATCH関数による列の指定VLOOKUP関数とMATCH関数を組み合わせた柔軟な検索方法を学びます。
演習_04_INDEX-MATCH関数による代替より柔軟で高速なINDEX-MATCH関数によるデータ検索方法を学びます。
演習_05_近似値検索近似値検索機能を使った範囲データの処理方法を学びます。

IF関数

IF関数は、条件式が真か偽かによって返す値を切り替える、条件分岐のための関数です。「金額が10,000以上なら "高額"、それ未満なら "通常"」のように、セルごとに違うラベルを表示したいときに使います。

fxIF 関数の構文
=IF(条件式, 真の場合, 偽の場合)
条件式
評価する論理式または条件です。この式が真(TRUE)を返せば、関数は第二引数の値を返します。偽(FALSE)を返せば、第三引数の値を返します。
真の場合
条件式が真のときに関数が返す値・内容を指定します。
偽の場合
条件式が偽のときに関数が返す値・内容を指定します。

下のような 売上 シートで、B列の金額に応じて C列に「高額」または「通常」を表示する例です。色は数式と参照の対応を表しています(青=条件式の中で参照するセル / ピンク=真の値・偽の値)。

シート: 売上
ABC
1取引ID金額(円)判定
2T0115,000高額
3T028,000通常
4T0322,000高額
セル C2 に入っている数式(C3, C4 にコピーするとそれぞれ B3, B4 を見る)
=IF(B2>=10000, "高額", "通常")
= 条件式が見るセル B2(第1引数) 濃いピンク = 条件が真のときの戻り値「高額」(第2引数) 薄いピンク = 条件が偽のときの戻り値「通常」(第3引数)

B2 の値「15,000」が10,000以上なので、条件式が真となり、第2引数の「高額」が C2 に返ります。B3 は「8,000」で条件式が偽となり、第3引数の「通常」が C3 に返ります。

ページ概要
IF関数IF関数の基本構文と論理式の使い方、条件分岐の設計方針を学びます。
演習_01_合格/不合格判定得点に応じて「合格」「不合格」を返す基本的なIF関数の使い方を練習します。
演習_02_ピボットテーブル→DB形式変換ピボット形式のデータをIF関数を使ってデータベース形式に変換する方法を学びます。

IFERROR関数

IFERROR関数は、計算式が #N/A#DIV/0! などのエラーになったときに、代わりの値を返す関数です。VLOOKUP の結果が見つからない場合に「該当なし」と表示する、ゼロ除算で空文字を返す、といった用途で使います。

fxIFERROR 関数の構文
=IFERROR(計算式, エラー時に返す値)
計算式
エラーが発生する可能性のある計算式を指定します。
エラー時に返す値
計算式がエラーのときに関数が返す値・内容を指定します。

VLOOKUP の検索値がマスタに存在しないと #N/A エラーになります。これを IFERROR で囲んで「該当なし」と表示する例です(青=VLOOKUP式(第1引数) / ピンク=エラー時に返す値(第2引数))。

シート: 商品マスタ
AB
1商品コード金額
2A001100
3A002200
4A003300
シート: 作業(IFERROR で囲んだとき / 囲まないとき)
EF (IFERROR なし)G (IFERROR で囲む)
1検索値VLOOKUP 単体IFERROR + VLOOKUP
2A001100100
3X999#N/A該当なし
セル G3 に入っている数式(IFERRORで囲んだ版)
=IFERROR(VLOOKUP(E3, 商品マスタ!$A$2:$B$4, 2, FALSE), "該当なし")
= エラーの可能性がある計算式(第1引数)。中の VLOOKUP は X999 がマスタにないので #N/A を返す。 ピンク = エラー時に返す値「該当なし」(第2引数)。

F列のように VLOOKUP 単体だと検索値が見つからないとき #N/A が表示されますが、G列のように IFERROR で囲むと、エラーの代わりに「該当なし」(ピンク)が返ります。エラーが画面に出るのを抑えたいときに使います。

ページ概要
IFERROR関数IFERROR関数の構文と、N/A・DIV/0!などのエラー値を適切に処理する方法を解説します。
演習_01_連結精算表エラー回避連結精算表で発生するエラーをIFERROR関数で適切に処理する実務的なテクニックを学びます。

INDEX関数とMATCH関数

INDEX関数は、指定した範囲の中の「○行目・○列目」の位置にある値を返す関数です。MATCH関数は、指定した値が範囲の中で何番目にあるかを返す関数です。

2つを組み合わせると VLOOKUP の上位互換になり、左方向の検索・列挿入に強い検索・複合キー検索が可能になります。MATCH でセルの位置を取得し、INDEX でその位置の値を引く、という使い方をします。

fxINDEX 関数の構文
=INDEX(配列, MATCH関数(行番号), MATCH関数(列番号))
配列
値を取得したいセル範囲
MATCH関数(行番号)
返したい値の行番号を返すMATCH関数を使う
MATCH関数(列番号)
返したい値の列番号(省略可能。1列の配列の場合は不要)を返すMATCH関数を使う
fxMATCH 関数の構文
=MATCH(検索値, 範囲, 検索タイプ)
検索値
探したい値を指定します。
範囲
検索を行う範囲(1行または1列)を指定します。
検索タイプ
主に完全一致タイプを使いますので、`0`と指定します。 1または省略:昇順で検索(既定値)。0:完全一致。-1:降順で検索。

VLOOKUP と同じ「商品コードから金額を引く」例を、INDEX-MATCH で書き換えてみます。VLOOKUP の 列番号「3」(魔法数字)の代わりに、列名そのもの を範囲として指定するのがポイントです(青=検索値 / 緑=検索列・返却列)。

シート: 商品マスタ
ABC
1商品コード
(検索列)
商品名金額
(返却列)
2A001リンゴ100
3A002バナナ200
4A003みかん300

A列(緑)= 検索列、C列(緑)= 返却列。MATCH が A列の中で「A002」が 2番目 にあると返し、INDEX が C列の 2番目 の値「200」を返す。

シート: 作業
EF
1検索値INDEX-MATCH の結果
2A002200
セル F2 に入っている数式
=INDEX(商品マスタ!$C$2:$C$4, MATCH(E2, 商品マスタ!$A$2:$A$4, 0))
= 検索列(A列)と返却列(C列)。VLOOKUP と違って 列名そのもの で指定するため、間に列が挿入されても壊れません。 = 検索値 E2(=A002)。MATCH が A列の中で何番目にあるかを調べ、INDEX がその位置の C列の値を返します。

MATCH(E2, A:A, 0) が「A002 は2番目」と返し、INDEX(C:C, 2) が C列の2番目の値「200」を返します。VLOOKUP のような「列番号」を覚える必要がなく、列の追加・削除に強い書き方です。

ページ概要
INDEX/MATCH関数INDEX関数とMATCH関数の組み合わせを徹底解説。VLOOKUPの限界を超える柔軟な検索方法を学びます。
演習_01_行単一条件1つの条件で行を検索する基本的なINDEX-MATCH関数の使い方を練習します。
演習_02_行・列単一条件行と列の両方の条件で値を取得する応用的な使い方を学びます。
演習_03_列複数条件複数の列条件を組み合わせて検索する高度なテクニックを習得します。
演習_04_行・列複数条件行と列の両方で複数条件を扱う、最も柔軟な検索方法を学びます。
演習_05_近似値検索INDEX-MATCH関数による近似値検索の活用方法を学びます。

SUM関数

指定した範囲の合計を求める、最も基本的な関数です。範囲を引数に渡すだけで使えます。

fxSUM 関数の構文
=SUM(数値1, [数値2], ...)
数値1
合計したい数値や数値が入力されたセル参照を指定します。
[数値2]
数値だけでなく、数式や他の関数の結果も指定できます。
...
引数は1つ以上指定する必要があり、最大255個まで指定できます。

下の 売上 シートで、D列の金額をすべて合計する例です(緑=合計範囲)。

シート: 売上
ABCD
1日付商品金額
24/34月リンゴ100
34/154月バナナ200
45/85月リンゴ150
55/225月バナナ250
6合計700
セル D6 に入っている数式
=SUM(D2:D5) → 700
= 合計したい範囲(D2:D5)。100 + 200 + 150 + 250 = 700。

条件分岐は不要で、ただ全部足したいだけのときに使います。たまに合計範囲に文字列セルが混ざっていても、SUM は文字列を無視して数値だけを合計します。

SUMIF関数

1つの条件を満たすセルだけを合計する関数です。ただし、SUMIFS関数で完全に置き換えられるため、実務では SUMIFS だけ覚えておけば十分です。SUMIF を見かけたとき「読める」状態になっておく目的で確認します。

fxSUMIF 関数の構文
=SUMIF(範囲, 検索条件, [合計範囲])
範囲
検索条件の対象となるセルの範囲を指定します。
検索条件
合計する条件を指定します。文字列の場合は””で囲みます。
[合計範囲]
合計する数値の範囲を指定します。省略した場合は「範囲」が合計範囲となります。

先ほどと同じ 売上 シートで、「リンゴ」の行だけを合計する例です(緑=合計範囲・条件範囲 / 青=条件値)。

シート: 売上
ABCD
1日付商品金額
24/34月リンゴ100
34/154月バナナ200
45/85月リンゴ150
55/225月バナナ250

緑(左)= 条件範囲 C列(商品名)。緑(右)= 合計範囲 D列(金額)。

シート: 集計
FG
1対象商品合計金額
2リンゴ250
セル G2 に入っている数式
=SUMIF(売上!$C$2:$C$5, F2, 売上!$D$2:$D$5) → 250
緑(第1引数) = 条件をチェックする範囲(C列=商品名)。 青(第2引数) = 条件値(F2 = "リンゴ")。 緑(第3引数) = 合計する範囲(D列=金額)。
C列の中で「リンゴ」と一致した行(D2 と D4)の金額(100 + 150)が合計され、250 が返ります。
SUMIFS で書き換えても同じ結果になる
=SUMIFS(売上!$D$2:$D$5, 売上!$C$2:$C$5, F2) → 250
SUMIFS は引数の順番が違うだけで(合計範囲が先頭)、1条件でも問題なく使えます。覚える関数を1つにまとめられて、メンテも楽になります。

Ctrl+[ で数値検証できるかどうかの違い(SUMIFSを推す最大の理由)

実務で集計を書いたあと、その合計値が正しいかを必ず検証します。このとき Ctrl+[(参照元のセルにジャンプ)が決定的に重要になります。

SUMIF の場合:第1引数が「条件範囲」(文字列側)
=SUMIF(売上!$C$2:$C$5, F2, 売上!$D$2:$D$5)
セルを選択して Ctrl+[ を押すと、第1引数の C列(商品名の文字列) にジャンプしてしまいます。集計対象の 数値(D列)に飛べない ので、合計値の根拠を辿る検証が一段で止まります。
SUMIFS の場合:第1引数が「合計範囲」(数値側)
=SUMIFS(売上!$D$2:$D$5, 売上!$C$2:$C$5, F2)
Ctrl+[ でいきなり 集計対象の数値列(D列) にジャンプできます。そこからさらに参照元(取引データの元帳など)へ Ctrl+[ を続ければ、数値の検証を連続で進められるのが SUMIFS の最大の強みです。

SUMIF は読めれば十分。書くときは SUMIFS で統一 しましょう。「合計範囲が先頭」という引数順は、覚えやすさだけでなく Ctrl+[ で数値の根拠を追えるかどうか、という実務上の検証スピードに直結します。

SUMIFS関数

複数の条件をすべて満たすセルを合計する関数です。これが本来の使いどころで、1条件でも複数条件でも、SUMIFS だけで対応できます。実務での集計はほぼこの関数で行います。

fxSUMIFS 関数の構文
=SUMIFS(合計範囲, 条件範囲1, 条件1, [条件範囲2], [条件2])
合計範囲
合計する数値の範囲を指定します。
条件範囲1
条件1に対する範囲を指定します。
条件1
条件1を指定します。
[条件範囲2]
任意です。条件2に対する範囲を指定します。
[条件2]
任意です。条件2を指定します。

先ほどと同じ 売上 シートで、「5月」かつ「リンゴ」の2条件をすべて満たす行だけを合計する例です(緑=合計範囲・条件範囲 / 青=条件値)。

シート: 売上
ABCD
1日付商品金額
24/34月リンゴ100
34/154月バナナ200
45/85月リンゴ150
55/225月バナナ250

緑(B列)= 条件範囲1(月)、緑(C列)= 条件範囲2(商品)、緑(D列)= 合計範囲。ピンク = 両方の条件を満たした唯一の行(5月かつリンゴ → 150)。

シート: 集計
FGH
1商品合計金額
25月リンゴ150
セル H2 に入っている数式
=SUMIFS(売上!$D$2:$D$5, 売上!$B$2:$B$5, F2, 売上!$C$2:$C$5, G2) → 150
緑(第1引数) = 合計範囲(D列=金額)。
緑(第2引数) + 青(第3引数) = 1組目の条件(B列で F2="5月")。
緑(第4引数) + 青(第5引数) = 2組目の条件(C列で G2="リンゴ")。
両方を満たす行(4行目のみ)の金額 150 が返ります。

引数の順番は 合計範囲が先頭、その後 「条件範囲, 条件値」のペア を必要なだけ並べます。「条件範囲1, 条件1, 条件範囲2, 条件2, ...」と覚えましょう。条件は最大127組まで指定できます。

ページ概要
SUMIFS関数SUM・SUMIF・SUMIFS関数の使い分けと、PIVOTテーブル代替としての活用方法を解説します。
演習_01_月次売上数量集計SUMIFS関数を使って月次の売上数量を集計する実務的な演習です。

TEXT関数

TEXT関数は、数値や日付に書式コードを適用して、指定した形式の 文字列 に変換する関数です。「2026/5/4」を「2026年5月4日」、1,000 を「¥1,000」、0.85 を「85.0%」のように見た目を整えるために使います。戻り値は文字列なので、計算には使えなくなる点に注意してください。

fxTEXT 関数の構文
=TEXT(, 書式)
書式を適用したい数値、日付、時刻などの値。セル参照や数式、定数を指定できます。
書式
結果として得たい表示形式を指定する文字列。ダブルクォーテーション(” ”)で囲む必要があります。

数値・日付を別の表示形式の 文字列 に変換する例です。第2引数に書式コードを指定するのがポイントです(青=変換元の値 / ピンク=書式コード)。

シート: 書式変換
ABC
1変換元の値書式コードTEXT関数の結果
22026/5/4"yyyy年m月d日"2026年5月4日
31000"¥#,##0"¥1,000
40.85"0.0%"85.0%
52026/5/4"aaaa"月曜日
セル C2〜C5 に入っている数式
C2: =TEXT(A2, "yyyy年m月d日") → 2026年5月4日
C3: =TEXT(A3, "¥#,##0") → ¥1,000
C4: =TEXT(A4, "0.0%") → 85.0%
C5: =TEXT(A5, "aaaa") → 月曜日
= 変換元の値(第1引数)。 ピンク = 書式コード(第2引数。ダブルクォーテーションで囲む)。 yyyy=西暦4桁、m=月、d=日、aaaa=曜日(フル)、#,##0=3桁区切り、0.0%=小数1桁の%。

TEXT関数の戻り値は 文字列 なので、計算には使えなくなります。表示用(レポートに「2026年5月4日」と書きたい等)に使います。セル自体の表示形式を変えるだけで済む場合は、TEXT を使わずセル書式設定で行う方がよいです。

ページ概要
TEXT関数TEXT関数の構文と、数値・日付・時刻の書式設定パターンを解説します。

ROUND関数

ROUND関数は、数値を指定した桁数で四捨五入する関数です。ROUNDUP(切り上げ)・ROUNDDOWN(切り捨て)と3兄弟で、第2引数の桁数(正=小数点以下/0=整数/負=整数部)の使い分けがポイントです。経理では消費税の端数処理など、ROUNDDOWN の出番が多くなります。

fxROUND 関数の構文
=ROUND(数値, 桁数)
数値
四捨五入する数値またはセル参照
桁数
四捨五入する桁数。正の値は小数点以下の桁数、負の値は整数部の桁数を表す。0の場合は整数に丸める。
fxROUNDUP 関数の構文
=ROUNDUP(数値, 桁数)
数値
切り上げる数値またはセル参照
桁数
切り上げる桁数。正の値は小数点以下の桁数、負の値は整数部の桁数を表す。0の場合は整数に丸める。
fxROUNDDOWN 関数の構文
=ROUNDDOWN(数値, 桁数)
数値
切り捨てる数値またはセル参照
桁数
切り捨てる桁数。正の値は小数点以下の桁数、負の値は整数部の桁数を表す。0の場合は整数に丸める。

元の値 1234.567ROUND / ROUNDUP / ROUNDDOWN でそれぞれ桁数を変えて丸めた対比です。桁数の符号がポイント(青=丸める数値 / ピンク=桁数)。

シート: 丸め比較
ABCDE
1元の値関数桁数結果意味
1234.567ROUND21234.57小数2桁で四捨五入
1234.567ROUND01235整数(1の位)で四捨五入
1234.567ROUND-1123010の位で四捨五入
1234.567ROUND-21200100の位で四捨五入
1234.567ROUNDUP01235整数で常に切り上げ
1234.567ROUNDDOWN01234整数で常に切り捨て
D列の数式(一例)
D2: =ROUND(A2, 2) → 1234.57
D4: =ROUND(A4, -1) → 1230
D6: =ROUNDUP(A6, 0) → 1235
= 丸める数値(第1引数)。 ピンク = 桁数(第2引数)。正なら小数点以下、0なら整数、負なら整数部の桁を表します。

ROUND は四捨五入、ROUNDUP は常に切り上げ、ROUNDDOWN は常に切り捨て。経理では消費税の端数処理など「切り捨て一択」のケースが多いので、ROUNDDOWN の出番が一番多いです。

ページ概要
ROUND関数ROUND・ROUNDUP・ROUNDDOWNの使い分けと、計算前後で四捨五入するタイミングの注意点を解説します。

INDIRECT関数

INDIRECT関数は、文字列を「セル参照」として解釈する関数です。シート名を別セルに書いておいて、それを使って動的に =SUM(4月!D:D) のような参照を組み立てる、といった使い方ができます。便利ですが、数式が壊れやすい・Ctrl+[ でジャンプできないなどのデメリットがあるため、多用は禁物です。

fxINDIRECT 関数の構文
=INDIRECT(参照文字列, [参照形式])
参照文字列
参照したいセルのアドレスを文字列で指定します。A1形式、R1C1形式、または名前を指定できます。
[参照形式]
省略可能です。「TRUE」を指定すると、参照形式がA1形式になり、「FALSE」と指定する場合は参照形式がR1C1形式になります。

4月シートと 5月シートに売上データがあるとして、集計シートの A列に書いた月名(文字列)から、その月のシートの D列を SUM する例です。INDIRECT が 「文字列」を「セル参照」に変換 するのがポイントです(青=シート名の文字列セル / ピンク=INDIRECTで組み立てる参照文字列)。

シート: 4月(5月シートも同構造)
AD
1商品金額
2リンゴ100
3バナナ200

5月シートも同じ構造で、リンゴ150・バナナ250 が入っているとします(合計400)

シート: 集計
AB
1売上合計
24月300
35月400
セル B2 に入っている数式
=SUM(INDIRECT(A2&"!D:D"))
= A2 セルの中身 "4月"ピンク = 連結する文字列 "!D:D"
A2 と "!D:D"& で連結すると "4月!D:D" という文字列ができ、INDIRECT がこれを 4月シートの D列 という実際のセル参照に変換。SUM がその合計を計算します。

B2 をコピーして B3 に貼ると、A3=「5月」を見て自動的に 5月シートの D列 を集計するように動的に切り替わります。これが INDIRECT の強み。ただし数式が壊れやすい・Ctrl+[ でジャンプできない、というデメリットもあるため多用は禁物です。

ページ概要
INDIRECT関数INDIRECT関数の構文と、便利だが多用すべきでない理由・使いどころを解説します。
演習_01_複数シート集計INDIRECT関数で複数シートのデータを1つのシートに集約する実務的な方法を練習します。