当サイトはアフィリエイト広告を利用しています。
Excelで一つのブックにシートを複数作成していると、探しているデータがどのシートに入力されているかわからなくなったり、データをまとめる作業が煩雑になったりします。
そこで今回は、Excelで複数シートを対象に検索する方法や、検索して一致したデータを抽出する方法などをご紹介します。
Excelで複数シートを対象に検索する方法
データの場所を検索したいときは、「検索機能」を使いましょう。
検索機能を使ってデータの場所を検索するには、[Ctrl]+[F]で「検索と置換」を表示し、「検索する文字列」に検索したい文字列を入力⇒「オプション」⇒「検索場所」で「ブック」を選択⇒「すべて検索」をクリックします。すると、検索する文字列と一致するシートの名前やセル番地が検索結果として表示されます。検索結果をクリックするとその場所に飛びます。
Excelで複数シートを対象に検索して一致したデータを抽出する方法
検索して一致したデータを抽出したいときは、「VLOOKUP関数」と「INDIRECT関数」を使いましょう。
VLOOKUP関数(ブイルックアップ関数)は、範囲の1列目で値を検索し、一致するセルと同じ行にある値を返す関数です。
VLOOKUP(検査値, 範囲, 列番号, [検索の型])
- 検査値(必須)
- 検索する値を指定する。
- 範囲(必須)
- 検索する値と取得したい値を含む範囲を指定する。
- 列番号(必須)
- 取得したい値が【範囲】の何列目にあるか指定する。
- 検索の型(省略可)
- 検索方法を以下のいずれかで指定する。省略すると「TRUE」として処理される。
- TRUE:近似値で検索する。【範囲】の1列目を昇順に並べ替えておく必要がある。
- FALSE:完全一致で検索する。【範囲】の並べ替えは必要ない。
INDIRECT関数(インダイレクト関数)は、文字列で指定されたセル番地の値を返す関数です。
INDIRECT(参照文字列, [参照形式])
- 参照文字列(必須)
- 取得したい値があるセル番地を「A1形式」または「R1C1形式」の文字列で指定する。
- 参照形式(省略可)
- 【参照文字列】の種類を以下のいずれかで指定する。省略すると「TRUE」として処理される。
- TRUE:【参照文字列】をA1形式とみなす。
- FALSE:【参照文字列】をR1C1形式とみなす。
(例)各支店の4月~6月の売上高を集計シートに抽出する。
集計シートのB3に、=VLOOKUP($A3,INDIRECT(B$2&"!A:B"),2,FALSE)
と入力します。
B$2
の値は「A支店」なので、INDIRECT(B$2&"!A:B")
は、INDIRECT(A支店!A:B)
つまり「A支店シートのA列からB列」という意味になります。
B3の数式をD3までオートフィルし、続いてD5までオートフィルします。これで各支店の4月~6月の売上高が抽出されます。
Excelで複数シートを一枚にまとめる方法
Excelでは、各シートの数値を合計して一枚にまとめることや、複数シートの指定範囲を一枚にまとめることなどができます。
前者は「統合機能」を使うことで、後者は「マクロ」を使うことで可能です。
詳しくは以下の記事で解説していますので、そちらを参考にしてみてください。
まとめ
今回は、Excelで複数シートを対象に検索する方法や、検索して一致したデータを抽出する方法などをご紹介しました。
データがどのシートにあるか知りたいときは、検索機能を使うのがおすすめです。検索して一致したデータを抽出したいときは、VLOOKUP関数とINDIRECT関数を使うといいでしょう。
データがどのシートにあるかわからなくてお困りの方や、各シートのデータを別シートに抽出したい方は、今回ご紹介した方法をぜひ試してみてくださいね。
Udemyでは、買い切りの動画講座で好きな分野について自分のペースで学ぶことができます。
パソコンだけでなくスマホにも対応しているので、移動時間や休憩時間にスマホで学習することも可能です。
30日間の返金保証付きなので、初めてでも安心して受講できますよ。
▼ おすすめのExcel VBA講座はこちら ▼