ChatGPTでINDEX・MATCH関数を作る方法
Excelで
商品番号から価格を
自動表示したいとき
VLOOKUP以外の
方法を使いたいと
思うことがあります。
ただ
INDEXとMATCHは
2つの関数を
組み合わせるため
初心者には
難しく見えがちです。
結論からいうと
ChatGPTへ
検索する値
検索する範囲
返したい値の範囲
を伝えれば
INDEX・MATCHを
組み合わせた数式を
作ってもらえます。
基本形は
=INDEX(
戻り値の範囲,
MATCH(
検索値,
検索範囲,0))
です。
MATCHで
検索値の位置を探し
INDEXで
同じ位置にある値を
取り出す仕組みです。
Microsoft公式でも
MATCHは
検索した項目の
相対位置を返し
その結果を
INDEXの行番号として
使えるとしています。
INDEX・MATCHは
2つの役割を
組み合わせる
INDEX関数は
指定した範囲から
行番号や列番号を使って
値を返す関数です。
一方
MATCH関数は
指定した値を
範囲から探して
何番目にあるかを
返す関数です。
たとえば
商品番号が
3番目に見つかれば
MATCHは
3という位置を返します。
その3を
INDEXへ渡せば
価格一覧の
3番目にある価格を
取り出せます。
つまり
MATCHが場所を探す
INDEXが値を返す
という分担です。
ChatGPTには
3つの情報を
具体的に伝える
INDEX・MATCHを
作ってもらうときは
関数名だけを
伝える必要はありません。
たとえば
「A2の商品番号を
E2:E100から探し
対応するG2:G100の
価格を表示したいです。
INDEXとMATCHで
数式を作ってください」
と依頼します。
すると
=INDEX(
G2:G100,
MATCH(
A2,E2:E100,0))
という形が
候補になります。
この場合
MATCHは
A2の商品番号を
E2:E100から探します。
見つかった位置を
INDEXが受け取り
G2:G100の
同じ位置にある値を
返します。
Microsoft公式でも
INDEXとMATCHを
組み合わせて
検索結果を返す
利用例が示されています。
MATCHの0は
完全一致を
指定している
初心者が
特に確認したいのが
MATCHの最後にある
0です。
MATCHの基本形は
=MATCH(
検索値,
検索範囲,
照合の種類)
です。
0を指定すると
検索値と
完全に一致する項目を
探します。
商品番号
社員番号
管理コード
などのように
一致する値を
正確に探したい場合は
0を使うケースが
分かりやすいでしょう。
近似一致には
別の指定がありますが
初心者が
商品番号検索を
作る場合などは
「完全一致で
作ってください」
とChatGPTへ
伝えると
意図が明確になります。
初心者でもできる
数式を作る手順
まずExcelで
3つの場所を
確認してください。
1つ目は
検索したい値です。
例として
A2の商品番号です。
2つ目は
商品番号が並ぶ
検索範囲です。
例として
E2:E100です。
3つ目は
結果として
返したい範囲です。
例として
G2:G100の価格です。
確認したら
ChatGPTへ
「A2を
E2:E100から探して
同じ行にある
G2:G100の値を
返したいです。
INDEXとMATCHを使い
完全一致で
数式を作ってください」
と入力します。
回答された式を
結果を表示したい
セルへ入力します。
既知の商品番号を
数件入れて
正しい価格になるか
確認できれば完了です。
例として
商品番号から
価格を検索する
仮に
次の表があるとします。
E列は商品番号
F列は商品名
G列は価格
A2には
検索したい商品番号が
入力されています。
この場合
=INDEX(
G2:G100,
MATCH(
A2,E2:E100,0))
とすれば
A2の商品番号に
対応する価格を
取り出せます。
たとえば
A2の商品番号が
E列の5番目にあれば
MATCHが
5を返します。
INDEXは
G2:G100の
5番目の値を返します。
この仕組みを理解すると
数式を直す場所も
分かりやすくなります。
検索範囲と
戻り値の範囲は
位置をそろえる
よくある失敗は
E2:E100
と
G3:G101
のように
範囲の開始位置が
ずれているケースです。
MATCHは
検索範囲の中で
何番目かを返します。
その番号を
INDEXがそのまま使うため
検索範囲と
戻り値の範囲の
行位置がずれていると
違うデータを
返す可能性があります。
ChatGPTへは
「検索範囲と
戻り値の範囲が
正しく対応しているかも
確認してください」
と依頼すると
チェックしやすくなります。
#N/Aが出たら
検索値を確認する
MATCHで
一致する値が
見つからない場合は
#N/Aになることがあります。
その場合は
検索値が
本当に存在するか
余分な空白がないか
数字と文字列が
混在していないか
検索範囲が
正しいか
を確認します。
見た目が
同じ番号でも
入力形式が違えば
一致しない場合があります。
ChatGPTには
「この式で
#N/Aが出ます。
原因候補を
順番に確認してください」
と数式を添えて
質問すると
切り分けしやすくなります。
VLOOKUPとの違いは
検索列の位置にある
VLOOKUPは
指定した表の
左端列から
検索する仕組みです。
INDEXとMATCHでは
検索する範囲と
返す範囲を
別々に指定できます。
そのため
右側の列を検索して
左側の列の値を返す
といった配置にも
対応しやすいのが
特徴です。
Microsoft公式でも
INDEXとMATCHの
組み合わせによって
LOOKUPやVLOOKUPと
同様の結果を
得られる例があります。
ただし
新しいExcel環境では
XLOOKUPやXMATCHも
選択肢になります。
Microsoftは
XMATCHを
MATCHの改良版として
案内しており
完全一致が既定です。
どの関数を使うかは
共有相手のExcel環境や
数式の読みやすさも
考えて決めてください。
Excelファイルを
ChatGPTへ送って
数式を相談できる
表が複雑で
セル範囲を
文章で説明しにくい場合は
Excelファイルを
ChatGPTへ
アップロードできます。
OpenAI公式では
ChatGPTは
.xls、.xlsx、.csvなどを
分析できます。
たとえば
「商品番号列から
価格を検索したいです。
INDEXとMATCHを使うなら
どの列を参照すべきか
確認してください」
と依頼できます。
OpenAIは
明確な列名があり
1行に1件の記録がある
構造を推奨しています。
業務ファイルなら
個人情報や
機密情報を
アップロードしてよいか
事前に確認してください。
FAQ
INDEXだけでも
検索できますか?
位置が分かっていれば
INDEXだけでも
値を返せます。
ただし
商品番号から
位置を自動で探すなら
MATCHとの組み合わせが
便利です。
MATCHの0は
必要ですか?
完全一致で
検索したい場合は
0を指定します。
商品番号など
一致を正確に
確認したい検索では
分かりやすい指定です。
左側の列も
返せますか?
返せます。
検索範囲と
戻り値の範囲を
別々に指定するため
検索列より左にある
値も取得できます。
#N/Aが出たら
数式が間違いですか?
必ずしも
数式の間違いとは
限りません。
検索値が
範囲内に存在しない場合も
#N/Aになります。
XLOOKUPと
どちらを使いますか?
利用環境と
目的で決めます。
INDEX・MATCHは
Excel 2016なども
Microsoft公式の
適用対象です。
新しい環境では
XLOOKUPやXMATCHも
比較するとよいでしょう。
まず1件だけ
検索式を
作ってみる
最初から
複雑な表で
試す必要はありません。
まず
検索値
検索範囲
戻り値の範囲
を1つずつ
確認してください。
そのあとChatGPTへ
「A2の商品番号を
E2:E100から探して
G2:G100の価格を
返したいです。
INDEXとMATCHで
完全一致の式を
作ってください」
と入力します。
式ができたら
結果が分かっている
商品番号で試し
正しい値になるか
確認してください。
まとめ
ChatGPTを使えば
INDEX・MATCH関数を
関数の書き方を
覚えていなくても
目的から作れます。
基本は
MATCHで
検索値の位置を探し
INDEXで
その位置にある値を
返す仕組みです。
検索値
検索範囲
戻り値の範囲
この3つを
ChatGPTへ
具体的に伝えることが
重要です。
まずは
商品番号と価格のような
単純な表を使い
完全一致の数式を
1つ作るところから
始めてください。
参考情報・出典
出典元:
Microsoft Support
確認内容:
INDEX関数の仕組み
指定位置から
値を返す方法
URL:
https://support.microsoft.com/ja-jp/excel/functions/index-function
出典元:
Microsoft Support
確認内容:
MATCH関数の仕組み
相対位置と
完全一致について
URL:
https://support.microsoft.com/ja-jp/excel/functions/match-function
出典元:
Microsoft Support
確認内容:
INDEXとMATCHを
組み合わせた
検索方法について
出典元:
Microsoft Support
確認内容:
XMATCHの特徴
MATCHとの違い
完全一致について
URL:
https://support.microsoft.com/ja-jp/excel/functions/xmatch-function
出典元:
OpenAI Help Center
確認内容:
ExcelやCSVの
アップロードと
データ分析について
URL:
https://help.openai.com/ja-jp/articles/8437071-data-analysis-with-chatgpt
この記事へのコメントはありません。