
CONTENT
こんにちは、東京エンジニアのO.Sです。
私自身、社会人2年目でまだまだ勉強中の身ではありますが、今回は業務で使用頻度の高いExcel関数 をご紹介します。
特に、私が実務で便利だと感じている FILTER 関数と XLOOKUP 関数について、基本的な使い方と実例を交えて説明します。
1. FILTER関数
従来の「オートフィルター → コピー → 貼り付け」といった手作業は不要になり、条件を変えるだけで結果が自動更新されます。集計やレポート作成の効率化に非常に有効です。
=FILTER(配列, 条件式, [条件に合わない場合])
・配列:抽出元となる範囲やテーブル
・条件式:TRUE/FALSEを返す式
・[条件に合わない場合]:抽出結果がゼロ件のときに返す値(省略可)
2. XLOOKUP関数
指定した値を検索し、対応する別列の値を返す関数です。VLOOKUPの後継として登場し、次のような利点があります。
・左方向の検索が可能
・列番号を指定する必要がない
・見つからなかった場合の返り値を指定可能
=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合])
・検索値:探す値
・検索範囲:検索する列
・戻り範囲:対応する値を返す列
・[見つからない場合]:見つからない時の返り値(省略可)
3. 実例
元データ
・DailyReportシート:日付、担当者、商品コード、商品名、数量、単価などが記載された日報
・ProductMasterシート:商品コードと原価のマスター
シート①「DailyReport」
シート②「ProductMaster」
① FILTER関数で日報抽出
目的:2025/8/1の田中太郎のデータを抽出
=FILTER(DailyReport!A2:F100, (DailyReport!B2:B100="田中太郎") * (DailyReport!A2:A100=DATE(2025,8,1)))
* は AND 条件を意味します。
② XLOOKUP関数で原価取得
目的:D2 に入力された商品コードから原価を取得
=XLOOKUP(D2, ProductMaster!A2:A100, ProductMaster!B2:B100)
4. おまけ:テーブル化でさらに便利に
元データを選択し、「挿入」→「テーブル」 でテーブル化できます。
タブ 「テーブルデザイン」 からテーブル名を設定すると、以下のように列名で参照でき、数式が読みやすくなります。
まとめ
・FILTER:条件抽出を自動化
・XLOOKUP:検索+値取得をシンプルに
・テーブル化で構造化参照を使うと、数式が見やすくメンテナンスしやすい(行追加時に範囲指定を修正する必要がなくなる)
これで、実務でよくある「条件抽出+マスター参照」の作業をほぼ自動化できます。
ぜひ日々の業務に取り入れてみてください。