INDEX関数は複数のセル範囲を抽出範囲として指定できるが、別のシートにあるクロス表は指定できない。シートごとに作成したクロス表から検索抽出するなら、シート名を使い、行見出しを検索値として列見出しの位置をMATCH関数で求めて交差するデータを抽出しよう。
目的
複数クロス表検索抽出
使用する関数
目次
例題1|複数のクロス表から検索抽出する
- 「金額」を求めるセル(E3セル)を選択し、「=VLOOKUP(」と入力する。
- [検索値]…「区分」のセル(C3セル)を選択する。
- [範囲]…INDIRECT関数で「区分」に入力したシート名のセル範囲を間接的に参照する数式を入力する。
- [列番号]…MATCH関数で、「区分」のシート名の列見出しの何列目に「種別」があるかを求める数式を入力する。
- [検索方法]…完全一致なので「0」と入力して、「Enter」キーで数式を確定する。
- 数式を必要な分だけ複写する。
【数式】=VLOOKUP(C3,INDIRECT(B3&”!A3:C4″),MATCH(D3,INDIRECT(B3&”!A2:C2″),0),0)
使用するExcel関数
数式の解説
「=VLOOKUP(C3,INDIRECT(B3&“!A3:C4”),MATCH(D3,INDIRECT(B3&“!A2:C2”),0),0)」の数式は、C3セルの「大人」をB3セルの「平日」シートのA3セル~C4セルから検索し、一致した行にあるD3セルの「一般」がある2列目から「金額」を抽出する。
Excelデータダウンロード
以下のリンクを右クリックし、Excelデータをダウンロードください
Excel-sample1.xlsx
コメント