ITのえんぴつ

Google Blockly開発者ツールやIT・プログラミングを研究して発信するブログ

【スプレッドシート】QUERY関数活用!全データから必要な情報だけを別シートに抽出する方法

スプレッドシートQUERY関数を使えば、全データから条件に合う情報だけを別シートに簡単に抽出・表示することができます。今回は、具体例を交えながらQUERY関数の使い方をご紹介します。

QUERY関数を使うメリット

  • 条件に合ったデータだけを抽出可能:大量のデータの中から必要な情報を選別できます。
  • 別シートへの自動反映:元データが更新されても、自動で別シートに反映されます。
  • 柔軟な条件指定:部分一致や複数条件の組み合わせが可能です。

QUERY関数で別シートにデータを抽出する方法

今回は、以下の2つの具体例を使って解説します。

  1. 「北海道」に関連するデータだけを抽出する方法
  2. 特定の条件に該当しないデータを抽出する方法

例①:「北海道」を含むデータを別シートに抽出

次の式を使うと、C列に「(北海道)」を含むデータだけを別シートに表示できます。

=QUERY('全データ'!B2:E174,"select B, C, E where C like '%(北海道)%'")

解説

  • '全データ'!B2:E174:元データがあるシート「全データ」の範囲(B2:E174)を指定します。
  • select B, C, E:表示する列(B列、C列、E列)を指定します。
  • where C like '%(北海道)%':C列の値が「(北海道)」を含む行を条件にします。
    • like '%文字列%':部分一致を意味します。

実行結果

元データが以下の場合:

B列 C列 E列
山田 青森(青森県 1000
鈴木 札幌(北海道) 2000
田中 那覇沖縄県 3000

QUERY関数を適用すると、別シートに以下が表示されます:

B列 C列 E列
鈴木 札幌(北海道) 2000

例②:特定の条件に該当しないデータを別シートに抽出

次の式を使うと、C列が「(北海道)」「(沖縄)」「(九州)」を含まないデータを別シートに表示できます。

=QUERY('全データ'!B2:E174,"select B, C, E where not C like '%(北海道)%' and not C like '%(沖縄)%' and not C like '%(九州)%'")

解説

  • where not C like '%(北海道)%':C列が「(北海道)」を含まない行を対象にします。
  • and not C like '%(沖縄)%':さらに「(沖縄)」も含まない行を条件に追加。
  • and not C like '%(九州)%':さらに「(九州)」も除外します。

実行結果

元データが以下の場合:

B列 C列 E列
山田 青森(青森県 1000
鈴木 札幌(北海道) 2000
田中 那覇沖縄県 3000
高橋 福岡(九州) 4000
佐藤 東京(東京都) 5000

QUERY関数を適用すると、別シートに以下が表示されます:

B列 C列 E列
山田 青森(青森県 1000
佐藤 東京(東京都) 5000

QUERY関数の活用ポイント

  1. 部分一致検索like '%文字列%'で柔軟にデータを絞り込めます。
  2. 条件の除外notを使うことで特定の条件に該当しないデータを抽出可能。
  3. 複数条件の組み合わせandを使って条件を組み合わせることで、さらに詳細な抽出ができます。

QUERY関数を活用すれば、全データから必要な情報だけを簡単に別シートに表示できます。今回の例を参考に、あなたのスプレッドシート作業を効率化してみてください!