知恵と経験をつなぎ、次のチャレンジへ
スプレッドシートのデータ抽出関数をマスター!VLOOKUP・INDEX+MATCH・IMPORTRANGE・QUERYの活用方法を解説!

スプレッドシートのデータ抽出関数をマスター!VLOOKUP・INDEX+MATCH・IMPORTRANGE・QUERYの活用方法を解説!

スプレッドシートでデータを管理していると、
「特定の値を別のシートから検索したい」
「条件に合うデータだけを抽出したい」
「別のスプレッドシートのデータをリアルタイムで参照したい」
といった場面がよくあります。

データ一覧から必要な情報を取得するための関数 には、 VLOOKUP・INDEX+MATCH・IMPORTRANGE・QUERY などがあります。
本記事では、 難易度別に それぞれの関数の使い方を 事務職の業務で使える実例 を交えながら解説していきます!


【初級】VLOOKUP関数 – 指定した値に対応するデータを取得

VLOOKUP関数の基本構文

=VLOOKUP(検索値, 範囲, 列番号, [検索方法])
引数説明
検索値探したい値(例:”商品A”)
範囲検索するデータの範囲(例:A2:C10)
列番号取得するデータが範囲の何列目にあるか(1から数える)
検索方法(省略可)FALSE(完全一致) or TRUE(近似一致)

ビジネスでの活用シーン

商品マスタや社員リストから情報を取得
例えば、商品コードを入力すると、対応する商品名や価格を取得できます。

📌 例:商品コードから商品名・価格を取得

商品コード商品名価格
A001ノートPC100,000
A002スマホ80,000
A003タブレット60,000

商品コード「A002」から商品名を取得

=VLOOKUP("A002", A2:C4, 2, FALSE)  → スマホ

商品コード「A002」から価格を取得

=VLOOKUP("A002", A2:C4, 3, FALSE)  → 80,000

💡 注意点

  • 検索値は最左列にある必要がある
  • 列番号は固定されるため、列の追加や順番変更に弱い
  • 完全一致(FALSE)を推奨

【中級】INDEX+MATCH関数 – VLOOKUPより柔軟にデータを検索

INDEX+MATCH関数の基本構文

=INDEX(取得範囲, MATCH(検索値, 検索範囲, [検索方法]))
関数説明
INDEX(範囲, 行番号, [列番号])指定した範囲の 行番号・列番号のデータを取得
MATCH(検索値, 検索範囲, [検索方法])検索値の位置(行番号)を取得

ビジネスでの活用シーン

VLOOKUPの欠点(検索列が最左である必要がある、列追加に弱い)を克服
例えば、「商品名から商品コードを取得する」といった 左右逆の検索 も可能!

📌 例:商品名から商品コードを取得

=INDEX(A2:A4, MATCH("スマホ", B2:B4, 0))
商品コード商品名価格
A001ノートPC100,000
A002スマホ80,000
A003タブレット60,000

💡 INDEX+MATCHのメリット

  • 検索列がどこにあってもOK(左右逆の検索ができる)
  • 列を追加・変更しても影響を受けない
  • より高速にデータを取得できる

【中級】IMPORTRANGE関数 – 別のスプレッドシートのデータを取得

IMPORTRANGE関数の基本構文

=IMPORTRANGE("スプレッドシートのURL", "シート名!範囲")
引数説明
スプレッドシートのURL参照するスプレッドシートのURL(またはそのキー部分)
シート名!範囲取得したい範囲(例:”データ!A1:C100″)

ビジネスでの活用シーン

複数のスプレッドシートを統合して管理

  • 営業成績や売上データを 別のシートで集計
  • 部署ごとに管理されているデータを、1つのシートでまとめる

📌 例:他のシートから売上データを取得

=IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxxx", "売上データ!A1:C100")

💡 IMPORTRANGEのメリット

  • スプレッドシート間のデータ連携が可能
  • リアルタイムでデータを更新
  • VLOOKUPやQUERYと組み合わせるとさらに便利

【上級】QUERY関数 – データをSQLのように抽出・フィルタリング

QUERY関数の基本構文

=QUERY(範囲, "SQL風のクエリ文", [ヘッダー行])
引数説明
範囲抽出するデータ範囲
SQL風のクエリ文フィルタリングや並び替えを指定
ヘッダー行(省略可)データのヘッダー行を指定(通常省略可)

ビジネスでの活用シーン

「条件に合うデータのみを抽出」「複数条件で検索」 など高度なデータ操作が可能

📌 例:売上データから「東京」だけを抽出

=QUERY(A1:C100, "WHERE B = '東京'")
商品名地域売上
ノートPC東京100,000
スマホ大阪80,000
タブレット東京60,000

東京のデータだけ抽出!

💡 QUERY関数のメリット

  • 複雑な条件でデータを抽出可能
  • 並び替え・フィルタリングが簡単
  • IMPORTRANGEと組み合わせて、外部データの条件抽出も可能

ここで紹介したQUERY関数の使い方はQUERY関数の超基本的な内容のみです。

QUERY関数のより高度な使い方については以下の記事をご確認下さい。


✅ まとめ

関数難易度特徴
VLOOKUP指定した値に対応するデータを取得=VLOOKUP("A002", A2:C4, 2, FALSE)
INDEX+MATCH⭐⭐より柔軟な検索が可能=INDEX(A2:A4, MATCH("スマホ", B2:B4, 0))
IMPORTRANGE⭐⭐他のスプレッドシートのデータを取得=IMPORTRANGE("URL", "シート名!A1:C100")
QUERY⭐⭐⭐SQLのようにデータを抽出・加工=QUERY(A1:C100, "WHERE B = '東京'")

👉 まずはVLOOKUPから始めて、徐々にINDEX+MATCHやQUERYにステップアップしましょう! 🚀