スプレッドシートのLOOKUP関数とは
LOOKUP関数は行または列でキーを検索し、検索行または検索列と同じ位置にある結果範囲のセルの値を返すGoogleスプレッドシート専用の関数です。この関数は新しいGoogleスプレッドシートでのみ使用でき、VLOOKUP関数やHLOOKUP関数とは異なり垂直と水平の両方向に検索できる柔軟性を持っています。
LOOKUP関数が正常に動作するためには検索範囲または検索結果配列のデータが昇順にソートされている必要があります。検索キーが見つからない場合は、提供された範囲内で検索キーより小さい値のうち最も近い値が検索に使用されるという特徴があります。
【PR】プログラミングや生成AIを無料で学べる「コードキャンプフリー」
LOOKUP関数の基本構文と引数設定
LOOKUP関数は検索キー、検索範囲または検索結果配列、結果範囲の3つの引数を持つ構文になっています。検索キーは検索対象となる値で、数値やテキスト、セル参照を指定でき、検索範囲は検索キーを探す行または列の範囲を表します。
=LOOKUP("Apple", A2:A10, B2:B10)
結果範囲は検索キーが検索範囲で見つかった位置に対応する値を取得する範囲で、検索範囲と同じサイズである必要があります。この設定により、関数は検索範囲で検索キーを見つけると、同じ位置の結果範囲から対応する値を返すようになります。
検索範囲と結果範囲を分けて指定する代わりに、単一の配列として検索結果配列を指定することも可能です。この場合、関数は配列の最初の列または行で検索し、最後の列または行から結果を返すという動作を行います。
配列型検索での動作パターンと制約条件
検索結果配列メソッドを使用する場合、配列に行よりも多くの列が含まれていると検索は最初の行で左から右に実行されます。逆に配列の行数が列数と同じかそれ以上の場合、検索は最初の列で上から下に実行されるという仕様になっています。
=LOOKUP("Product01", A1:D10)
LOOKUP関数の重要な制約として、データが正しくソートされていない場合は誤った結果を返す可能性があることが挙げられます。この問題を解決するには事前にSORT関数を使用してデータを昇順に並べ替える必要があり、そうしないと期待する結果が得られません。
また、LOOKUP関数にはVLOOKUP関数やHLOOKUP関数のような完全一致と近似一致を選択するオプションがないという特徴があります。このため正確な一致が必要な場合はVLOOKUP関数またはHLOOKUP関数の使用を検討する必要があるでしょう。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
ITやプログラミングに関するコラム
- Canvaとは?使い方やアカウント登録などを初心者向けに解説
- git configで設定情報を確認・表示する方法
- 「Pythonはやめとけ」と言われる理由と学習するメリット
- Ubuntuのversionを確認する方法
- Geminiで画像を生成する方法|ChatGPTとの比較結果も紹介