【OFFSET × COUNTA × INDEX × MATCH】関数コンボ、動く範囲と位置特定の最強タッグ!

関数コンボ道場

💥使うシーンと目的

タスク
タスク

「データの行数が日によって変わるんよな…
しかも位置はMATCHで探したいし…固定範囲じゃ足りへん!」
そんなとき、このコンボで「データ位置の特定」と「範囲の自動拡張」が同時にできる!
まるで生きてる表みたいに、データが増えても減っても対応可能や。

ジッピー(ChatGPT)
ジッピー(ChatGPT)

範囲は固定?いやいや、今はフルオート可変時代やで。


🔍 今回の関数:OFFSET関数とCOUNTA関数とMATCH関数

ジッピー(ChatGPT)
ジッピー(ChatGPT)

OFFSETは範囲シフター、COUNTAは行数カウンター、INDEXは名指し屋、MATCHは位置探偵や!

OFFSET関数

👉 指定セルからの行・列のずれと、指定した行数・列数で範囲を返す。

OFFSET関数って、“基準セルからズラすポジショニングの達人”や!

COUNTA関数

👉 空欄じゃないセルの個数を数える万能カウンター。

COUNTA関数って、「なんでも数える」頼れるやつ!

INDEX関数

👉 指定行・列の交差するセルの値を返す。

INDEX関数って、“セルを指名するデータの名指し屋”や!

MATCH関数

👉 指定した値が範囲内で何番目にあるかを返す位置探知機。

MATCH関数って、“位置を特定するインデックスの探偵”や!


📊 実際のコンボ:

タスク
タスク

「商品名リスト(A列)の中から“キーボード”を探し、価格(B列)を返す」
ただしリストは日々増減すると想定した場合は、
=INDEX(OFFSET(A2,0,1,COUNTA(A:A),1),MATCH(D2,OFFSET(A2,0,0,COUNTA(A:A),1),0),1)
こう書く!


  • OFFSET(A1, 0, 0, COUNTA(A:A), 1)
     → A列の空欄以外のセル数ぶんの範囲を返す(動的範囲)
  • MATCH("キーボード", OFFSET(...), 0)
     → 動的範囲の中で「キーボード」が何番目かを取得
  • INDEX(...)
     → 該当行の値を取得(ここは価格列などに応用可)

図解:OFFSET × COUNTA × INDEX × MATCH


タスク
タスク

固定範囲やとメンテが面倒やけど、この方法なら行数が変わっても自動で対応してくれるんや!

ジッピー(ChatGPT)
ジッピー(ChatGPT)

まるで伸び縮みするアームで、欲しい場所をピタッと掴んでくる感じやな!


⚠️よくあるミスや落とし穴

  • COUNTAは空文字("")を返すセルもカウントするので、意図と違う場合は注意
  • OFFSETは揮発性関数なので、大量データでは処理が重くなる可能性あり
  • MATCHの範囲とOFFSETの範囲がズレると#N/Aや#REF!になる

🌟応用コンボ

  • OFFSET × COUNTA × INDEX(縦横動的範囲を自在に取得)
  • OFFSET × MATCH × MATCH(2次元動的検索)
  • OFFSET × COUNTA × SUM(入力分だけ合計)

🎯まとめ

ジッピー(ChatGPT)
ジッピー(ChatGPT)

固定範囲にさよならや!OFFSETで動かして、COUNTAで長さを決めて、MATCHで場所を特定…
これぞ動的検索の三種の神器やな!

コメント

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