エクセルで条件に合うデータを指定して別シートにデータを自動抽出する方法
「条件に合うデータを指定して別シートにデータを自動抽出する方法」に関して、以下3つを簡単に解説していきます。
- FILTER関数による条件付きデータの抽出手順
- VLOOKUP関数を使った別シートからのデータ抽出
- INDEX+MATCH関数での複数条件によるデータ抽出
FILTER関数による条件付きデータの抽出手順
以下のFILTER関数を使うことによって、指定した条件に合うデータを別シートに簡単に抽出することが可能です。
=FILTER(データの範囲,条件式,空の場合の値)
FILTER関数では、検索範囲の設定方法が重要なポイントとなっています。条件式には論理演算子を使って複数の条件を組み合わせることもでき、より詳細な抽出も可能です。
複数の条件を指定する場合は、条件式を「*」や「+」で結合することで、AND検索やOR検索を実現できます。条件式の組み立て方次第で、柔軟なデータ抽出ができるようになるので、以下の組み合わせなどをぜひ参考にしてください。
# 複数条件でAND検索する場合
=FILTER(A2:D100,(B2:B100>1000)*(C2:C100="東京"))
# 複数条件でOR検索する場合
=FILTER(A2:D100,(B2:B100>1000ぎ+んん(C2:C100="東京"))
# 日付範囲と金額を組み合わせる場合
=FILTER(A2:D100,(B2:B100>=DATE(2024,1,1))*(B2:B100<=DATE(2024,3,31))*(C2:C100>50000))
# NOT条件を含める場合
=FILTER(A2:D100,--(B2:B100<>"除外")*(C2:C100>1000))
# ワイルドカードを使用する場合
=FILTER(A2:D100,ISNUMBER(SEARCH("営業*",B2:B100)))
VLOOKUP関数を使った別シートからのデータ抽出
VLOOKUP関数とは、検索値と一致するデータを別シートから取得する際に便利な関数です。検索範囲を指定する際はシート名を明示的に指定することで、別シートのデータを参照することができます。
=VLOOKUP(検索値,Sheet2!$A$1:$D$10,2,FALSE)
別シートからデータを抽出する際は絶対参照を使用することで、数式をコピーしても参照がずれないようにできます。シート間でのデータ連携を効率的に行えるようになるため、この点はしっかり覚えておくことをおすすめします。
検索条件を複数指定する場合、以下のようにVLOOKUP関数とIFS関数などを組み合わせると、より精度の高いデータ抽出を実現することも可能です。
# 条件分岐
=IFS(
B2="国内",VLOOKUP(A2,国内!$A$1:$D$100,2,FALSE),
B2="海外",VLOOKUP(A2,海外!$A$1:$D$100,2,FALSE),
TRUE,"対象外"
)
INDEX+MATCH関数での複数条件によるデータ抽出
INDEX+MATCH関数の組み合わせは、複数の条件に基づいて別シートからデータを抽出する際に有効です。MATCH関数で検索条件を指定し、INDEX関数で該当するデータを取得することができます。
=INDEX(範囲,MATCH(検索値,検索範囲,0),列番号)
INDEX+MATCH関数を使用すると、VLOOKUP関数では難しい横方向の検索も可能になるため、データの配置に依存せず柔軟な検索ができるようになります。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
ITやプログラミングに関するコラム
-
パソコンのキーボード操作一覧表【Windows編】
-
FeloとCanvaが連携!数分で高品質プレゼンを作成・編集可能に。具体的な使い方を詳しく解説
-
テキストを音声化できるスマホアプリ「Reader by ElevenLabs」を使ってみた。
-
ポータブルAIボイスレコーダー「PLAUD NotePin」の評判は?具体的な機能やPLAUD Noteとの違い