「5つの項目があるデータから、レポートに必要な3項目だけを抜き出したい」「顧客リストから、名前と電話番号だけをサッと表示させたい」
IT業界の現場で働いていた頃、私も何度も同じような場面に遭遇しました。元のデータには多くの情報がありますが、目的に応じて必要な項目だけを表示させることが、業務効率化の鍵になります。
しかし、手作業で項目をコピー&ペーストするのは面倒で、ミスも起こりがちです。
この記事では、あなたの「明日」をもっと楽しく、豊かにするために、スプレッドシート初心者の方でもすぐに実践できる、QUERY関数を使った必要な項目だけを選んで抽出する方法を解説します。
この記事を読むメリット
- 元のデータには手を加えず、必要な項目だけを別のシートに表示できる。
- レポートや資料作成の時間を大幅に短縮できる。
- データの可視性が高まり、チームでの情報共有がスムーズになる。
ステップ1:データベースシートの準備
まずは、元となるデータが入力されたシートを用意します。
- 1行目には、**項目名(ヘッダー)**を必ず入力してください。
【現場経験から一言】 データ量が多くても少なくても、ヘッダーをきちんと設定しておくことが、後から関数を使う際の「地図」になります。

サンプルシートはこちら【QUERY関数】のサンプルシート
ステップ2:検索用シートの準備
次に、検索キーワードを入力し、結果を表示させるシートを作成します。
- B1セルに検索したいキーワードを入力する欄とします。
- A3セルから、表示させたい項目名(「商品ID」「商品名」「販売価格」「保管場所」など)をヘッダーとして貼り付けます。
A列 | B列 |
カテゴリー: | 家電 |
商品ID | 商品名 |
ステップ3:魔法の関数「QUERY」を使いこなす!
いよいよ、必要な項目だけを選んで表示させる仕組みを作ります。
検索シートのA4セルに、以下の関数をコピペしてください。
=QUERY(データベース!A2:L, "SELECT A, B, I, K WHERE C = '"&B1&"'")

【関数の解説】 QUERY
関数は、以下の3つの要素で成り立っています。
- データの範囲
データベース!A2:L
の部分です。データの抽出元となる、A列からL列全体を指定しています。
- 実行したい処理(クエリ)
"SELECT A, B, I, K WHERE C = '"&B1&"'"
の部分です。これがQUERY
関数の魔法の中心です。SELECT A, B, I, K
: 「A列、B列、I列、K列を表示しなさい」という指示です。WHERE C = '"&B1&"'
: 「ただし、C列の値がB1セルの値と一致するものだけを対象にしなさい」という条件です。
- ヘッダーの行数
- この例では、データの1行目にはヘッダーが含まれていないため、
QUERY
関数ではヘッダーの行数を指定していません。(QUERY
関数のデフォルトでは、データ範囲の最初の行がヘッダーとして扱われるため、この例では省略しています。)
- この例では、データの1行目にはヘッダーが含まれていないため、
これで、検索シートのB1セルに「家電」と入力すると、元のデータには多くの項目がありますが、「商品ID」「商品名」「販売価格」「保管場所」の4項目だけが自動で抽出されて表示されるようになります。

「FILTER」を使用した場合は全ての値が表示されてしまいます。

動画で見る「QUERY関数」の使い方
まとめ
今回は、スプレッドシートの**「QUERY関数」**を使って、必要な項目だけを抽出する方法を解説しました。
QUERY
関数を使えば、FILTER
、INDEX
、ARRAYFORMULA
を組み合わせるよりもシンプルで、確実に動作するデータ抽出の仕組みを構築できます。
あなたの「明日」を少しでも快適にするために、ぜひこの自動化テクニックを活用してみてください。
「こんな場合はどうする?」といった疑問や、この記事の内容でわからないことがあれば、お気軽にお尋ねください。
コメント