Excelのデータから
必要なデータを抽出表示する事例です。
Web版のExcelと
最新のデスクトップ版Excelで使用できます。
Office2016などでは使えません。
Teamsなどで共有しておけば
Web版のExcelで使えますので十分です。
参考までに
社員の教育受講履歴のデータを考えてみました。
※職場にあるデータを適当に利用してみてください。
作成したデータ抽出の画面は
D3,D4セルで希望のカテゴリーと受講科目名を選択
この時
D3セルで選択した受講科目名に絞り込む
全てを選択した場合
全ての受講科目名のデータを抽出表示
さて 最初に
G列に、カテゴリーの一覧を作成しましょう。
G2セルにUniqoue関数
=UNIQUE(教育受講履歴!B2:B10000)
これで、データにあるカテゴリの重複を削除した一覧
H列には、選択したカテゴリーの重複を削除した
受講科目名の一覧
H2セルに
Uniqoue関数とFilter関数の組み合わせ
=UNIQUE(FILTER(教育受講履歴!C:C,教育受講履歴!B:B=D3,""))
抽出する条件に入力規則のリストを設定します。
D3,D4セルで指定したカテゴリー、受講科目名両方
一致するデータの一覧
但し
D4セルが全ての場合は、カテゴリーの一致のみ
一致するデータの抽出
関数を入力するのは B7セルのみ
=IF(D4="全て",FILTER(教育受講履歴!A:D,(教育受講履歴!B:B=D3),""),FILTER(教育受講履歴!A:D,(教育受講履歴!B:B=D3)*(教育受講履歴!C:C=D4),""))
ちょっと長くなりましたが
=IF(D4="全て" で分岐
全ての場合は
FILTER(教育受講履歴!A:D,(教育受講履歴!B:B=D3),"")
それ以外は
FILTER(教育受講履歴!A:D,(教育受講履歴!B:B=D3)*(教育受講履歴!C:C=D4),"")
と分けてみるとわかりやすいでしょう。
Filter関数、Uniqoue関数、IF文などと
組み合わせて使用できます。
完成したらTeamsなどで
必要な方と共有しましょう。
Vlookup関数では
該当するデータを一つしか表示できません。
複数のデータが該当して、一覧表を作成する場合は
Filter関数などSpill関数を使用すれば簡単です。
古いOffice2016などでは
フィルターオプションや重複の削除の機能を
VBAで自動実行するマクロの作成をしていました。
こんな感じで
事例を紹介していきますので
よろしくお願いします。