エクセル

エクセル(Excel)のデータ抽出とは?関数を使った方法や注意点など徹底解説

Excelの魅力をお伝えする「パソコン教室ISA」ライターチームです。

エクセル(Excel)における抽出とは、必要なデータだけを抽出する方法を指します。この記事では、エクセルにおける抽出の概要や、データ抽出のやり方などを解説します。関数を使って抽出する際の注意点についても解説するので、参考にしてください。

パソコン教室ISAの資料をダウンロード(無料)

エクセルにおける「抽出」とは

エクセルでの抽出機能は、大量のデータが含まれたファイルのなかから、特定の条件に一致するデータだけを選ぶために使用されます。

具体的には、名簿や住所録、顧客管理などから、必要な情報だけを効率的に抽出するのに活用可能です。

エクセルで抽出を行う方法はいくつかありますが、関数を使う方法と関数を使わない方法の2つに大きく分けられます。

パソコンスクールISA

Office・IT・プログラミング等の
パソコンスキルアップを徹底サポート!
東京、横浜、埼玉、千葉の
最寄駅5分以内!オンライン授業も

無料体験レッスンに申し込む

【関数編】エクセルにおけるデータ抽出のやり方

関数を活用すると、エクセルでデータ抽出を実施可能です。また、データ抽出に活用できる関数は多岐に渡ります。ここからは、具体的な関数とそれぞれの詳細を解説します。

VLOOKUP関数を使った方法

VLOOKUP関数を使うと、作成したリストからデータを抽出することができます。以下の構文に適切なデータを入力します。

=VLOOKUP(検索値, 範囲, 列番号, [近似一致または完全一致])

以下は、データ抽出するための手順とそれぞれの詳細です。

  1. 結果を表示したいセル(E3)にVLOOKUP関数を挿入する。
  2. 抽出したいデータに関連する検索値(D3)を指定する。(この値は、元のコード表の最初の列に存在しているデータである必要がある)
  3. 検索を行うデータ範囲(A3:B7)を指定する。(この範囲には、検索値と、抽出したいデータも含まれている必要がある)
  4. 抽出したいデータが含まれる列の番号を数値で指定する(2)。(表の左端列から数え、何番目の列にデータがあるかを確認する)
  5. データの抽出には、通常、完全一致(FALSE)を使用する。この手順によって、指定した検索値と完全に一致するデータのみが抽出される

パソコン教室ISAの体験授業受けてみる

XLOOKUP関数を使った方法

XLOOKUP関数でもデータ抽出ができます。具体的な構文は以下の通りです。

=XLOOKUP
(検索値, 検索範囲, 戻り範囲, 見つからない場合, 一致モード, 検索モード)

なお、XLOOKUP関数はExcel 2021 から正式に追加された関数です。そのため、Excel 2021より以前のバージョンでは使えないため注意しましょう。手順は以下を参考にしてください。

  1. 結果を表示したいセル(B2)にXLOOKUP関数を挿入する。
  2. 抽出したいデータに関連する検索値(A2)を指定する。
  3. 検索値を探す範囲(F5からF9)と、B2以降に表示したい値が含まれる範囲(B5:E9)を指定する。(同じ行数または列数である必要がある)
  4. 検索値が見つからない場合の動作や、検索の種類、検索の方向を指定する

大多数の用途では、検索値が見つからない場合の動作、検索の方向は省略して問題ありません。

パソコン教室ISAの体験授業で自分にあったレベルを相談してみる

INDEX関数とMATCH関数を使った方法

INDEX関数とMATCH関数を組み合わせることでも、データ抽出が可能です。構文は以下のようになります。

=INDEX(配列, 行番号, [列番号] MATCH(検索値, 検索範囲, [検索タイプ]))

INDEX関数とMATCH関数を組み合わせたデータ抽出の手順は、以下の通りです。

  1. 抽出したいデータが入っている範囲をIndex関数の配列に指定する
  2. 表示したい種類や、注文数が表内のどこにあるのかを調べるためにMATCH関数を使用する
  3. MATCH関数で得られた値を行番号や列番号に指定して、特定のデータを抽出する

INDEX関数とMATCH関数の組み合わせを使用することで、列と行の両方で自動的にデータを検索できます

パソコン教室ISAの資料をダウンロード(無料)

DGET関数を使った方法

データ抽出には、DGET関数を使う方法もあります。以下は、DGET関数を用いる際の構文です。

=DGET(データベース, フィールド, 条件)

また、DGET関数を使ったデータ抽出の手順は以下の通りです。

  1. 抽出したいデータを含むデータベースを準備する(各列の先頭に列のラベルが必要)
  2. 抽出条件を別のセル範囲に作成する。条件範囲の最初の行には、条件に使用する列のラベルを記入し、次の行に条件を記述する。(条件は、データベースのラベル名と一致させる必要がある)
  3. 新しいセル(A13)にDGET関数を入力する。引数にデータベース範囲、抽出したいデータが含まれるフィールド(列名または列番号)、条件範囲を指定する

DGET関数は条件を満たす 1 つの値を抽出します。条件を満たすデータが複数あった場合はエラー値 #NUM! が返されます。

パソコン教室ISAの体験授業受けてみる

Filter関数を使った方法

FILTER 関数を使用すると、定義した条件に基づいてデータの範囲を抽出した結果を表示できます。元の表は残しておいたまま、別の場所に結果を表示できます

Filter関数もExcel 2021 から正式に追加された関数です。そのため、Excel 2021より以前のバージョンでは使えないため注意しましょう。
以下は、FILTER関数を用いる際の構文です。

=FILTER(範囲,条件,[空の場合])

FILTER関数の「配列」には抽出する元の表を選択します。その際、1行目の見出しは含めずにデータ範囲のみ選択します。

引数「含む」には、条件を指定します。ここでは、販売数が30のものとしました。3つ目の引数、「空の場合の処理」は一致するデータがなかった場合の処理を指定します。省略すると、該当データが存在しない場合は[#CALC!]エラーが表示されます。例えば、「該当データなし」などの文字列を、[一致しない場合の値]に指定しておくとことで条件を満たすデータがない場合は、「該当データなし」と表示されます。

パソコンスクールISA

Office・IT・プログラミング等の
パソコンスキルアップを徹底サポート!
東京、横浜、埼玉、千葉の
最寄駅5分以内!オンライン授業も

無料体験レッスンに申し込む

IF関数を使った方法

IF関数を活用することで、データ抽出を実行できます。具体的な構文は以下を参考にしてください。

=IF(条件式, 真の場合に返す値, 偽の場合に返す値)

データ抽出したい場合のIF関数の使い方は、以下の通りです。

  1. IF関数を挿入する。条件式に1つ目の条件、真の場合にその条件を満たしていた時に返す値を指定する
  2. 結果を3つ以上に分岐する場合には、偽の場合に、IF関数を挿入し、2つ目の条件と真の場合、偽の場合を指定する(4つ以上の場合は偽の場合にIF関数を挿入する)

COUNTIFS関数を使った方法

条件に合うデータの個数を調べるならCOUNTIFS関数を使うのもおすすめです。元となる構文は以下のようになります。

=COUNTIFS(条件範囲1, 条件1, [条件範囲2], [条件2], …)

手順は、以下の順番で実行してください。

  1. セル(G4)にCOUNTIFS関数を入力し、条件範囲と条件を指定する。(複数の条件がある場合は、それぞれの条件範囲と条件を追加する)
  2. 指定した条件(ランクがAの銀座店)に一致するデータの数をカウントされる。
  3. 必要に応じて絶対参照を指定してコピーする

パソコン教室ISAの体験授業で自分にあったレベルを相談してみる

\ Excel講座の詳しい情報を受け取る /

Excel講座に関する資料を
ダウンロード

【関数以外】エクセルにおけるデータ抽出のやり方

関数を用いなくても、データ抽出を実施する方法があります。以下は、関数を使わない代表的な方法であるフィルター機能とテーブル機能それぞれの詳細です。データ抽出を実施したい場合の参考にしてください。

フィルター機能を使う方法

フィルター機能を使うと、範囲や対象を指定したうえで、検索条件に合ったデータの抽出ができます。以下は、具体的な手順とそれぞれの工程における詳細です。

  1. フィルターをかけたい表全体、またはデータが含まれている列の上部(通常はヘッダーがある行)を選択する
  2. [ホーム]タブ-[並べ替えとフィルター]から[フィルター]クリックする
  3. 見出しに「▼」マークが表示される
  4. 条件を設定したい列の▼をクリックする。
  5. 表示されるリストから条件を選択するか、検索ボックスにキーワードを入力して条件を絞り込む

パソコン教室ISAの体験授業受けてみる

テーブル機能(スライサー)を活用する方法

テーブルに備わっている機能であるスライサーを活用すると、データ抽出が可能です。具体的な手順は以下の通りです。

  1. 表内、1か所選択をする。
  2. [挿入]タブの[テーブル]ボタンを選択する。
  3. データ範囲を指定してテーブルに変換する。
  4. テーブル内の任意のセルを1か所選択した状態で、[テーブルデザイン]タブの[スライサーの挿入]をクリックする。
  5. 抽出したい項目にチェックを入れてスライサーを追加する
  6. 一覧から選択すると、選択した値に一致するデータのみがテーブルに表示される
    複数の値を選択したい場合はCtrlキーを利用する

パソコンスクールISA

Office・IT・プログラミング等の
パソコンスキルアップを徹底サポート!
東京、横浜、埼玉、千葉の
最寄駅5分以内!オンライン授業も

無料体験レッスンに申し込む

\ Excel講座の詳しい情報を受け取る /

Excel講座に関する資料を
ダウンロード

エクセルで関数を使って抽出する際の注意点

エクセルで関数を使ってデータを抽出する際は、いくつか注意すべき点があります。以下は、代表的な注意点3つと、それぞれの詳細です。エクセルで関数を使ってデータを抽出する前に、確認しましょう。

範囲が合っているか確認する

エクセルで関数を使ってデータを抽出する際は、対象としているデータの範囲が合っているか確認しましょう。

関数の構文やデータ自体が正しくても、抽出したい範囲を間違えると、正しい値を抽出できない可能性があります

特に、範囲を指定するだけで利用可能な関数を用いる場合には注意が必要です。なぜなら、正しくない範囲を指定していても、関数を適用できてしまうからです。

結合セルがある場合データ抽出できないことがある

エクセルのシートに結合セルがある場合は、適切なデータ抽出ができない可能性があります。なぜなら、結合されたセルにフィルターを適用しようとすると、エクセルのフィルタリング機能が結合セル内のデータを正しく処理できないからです。

フィルター機能を一旦解除したり、対象とするデータを適切に指定したりして、対策をしましょう。

フィルター抽出すると連番は崩れる

フィルター機能を用いてデータを抽出すると、連番が不連続になってしまい、整列が崩れてしまう場合があります。

そのため、SUBTOTAL関数を使って対策することがおすすめです。SUBTOTAL関数を用いると、フィルターをかけても連番が自動反映されるため、順番が崩れて見た目が悪くなることがありません。SUBTOTAL関数の構文は以下の通りです。

=SUBTOTAL (集計方法, 参照1, [参照2],…)

上記の関数は、連番が記入されたセルに記入します。その後、フィルターをかけてデータ抽出をしても、連番が崩れなくなります。

パソコン教室ISAの資料を取り寄せる(無料)

まとめ

データ抽出は、大量のデータのなかから特定の情報を見つけ出せる便利な機能です。しかし、さまざまな方法がある他、それぞれの特徴も異なるため、適切な方法を選ぶことが難しい傾向にあります。

特に、パソコンやエクセルを使い慣れていない人は、利用する前に適切な知識やスキルを身に付けることがおすすめです。

ISAパソコン教室は、40年近く教室を営んでいる老舗のパソコン教室です。また、教室にいる講師は自社の社員のため、講師の質も担保されています。

直近10年で、Microsoftジャパンが1年に1社選ぶLearning Awardを3度受賞するなど、実績もあります。パソコンやエクセルを使いこなしたい人は、ぜひISAパソコン教室をご活用ください。

ABOUT ME
石井麻美
パソコン教室ISA講師の講師です。 主にOffice系(Word Excel Access PowerPoint)やVBAの授業を担当しています。 Microsoft Office Specialist VBAスタンダードクラウン 資格取得済
\ Excel講座の資料を手に入れよう/
関連するお役立ち資料
MOS試験に関する資料
MOS試験の概要や取得するメリット、受験科目の選び方や勉強方法を解説 ダウンロード
VBAに関する資料
VBAとはどういうものか?VBAの基本情報からできること、できないことを解説 ダウンロード
お気軽にご相談ください

パソコンに関する技術や、資格取得のご相談など、お気軽にお問い合わせください