【PowerQuery】セルの値を使って日付をフィルターする方法

Excel で日々データを扱っていると、「特定の月だけ抽出したい」という場面はよくあります。
しかし、Power Query の GUI 上のフィルターでは、固定の値しか指定できず、毎回手入力で月を選ぶ必要があります。
今回は、Excel のセルを使って動的に日付データをフィルターする方法をご紹介いたします。
AI・Microsoft 365 活用を業務改善につなげたい企業向けに、研修・導入支援・活用サポートを行っています。
「どんなことを依頼できる?」「実際の活用事例は?」という方は、ぜひ無料資料をご覧ください。
\ 業務効率化・補助金情報をお届け/
\ 活用事例も掲載しています /
変数を使って日付をフィルターする方法
Excelの特定のセルに入力された年月をもとに、Power Query 内でフィルターを行います。
変数の設定
任意のセルに「2025/10」形式でフィルターしたい年月を入力します。
セルを選択した状態で、名前の定義を行います。付けた名前は後ほど使います。
名前の定義の設定についてはこちらから!

クエリ処理
日付をフィルターしたいクエリを開いた状態で、以下の設定を行います。
ホーム > 詳細エディターを開きます。

ソースの上側に下記コードを入力し、赤文字部分を設定した文字列に変更します。
入力後、完了ボタンを押します。
年月 = Excel.CurrentWorkbook(){[Name ="処理月"]}[Content]{0}[Column1],
年 = Number.FromText(Text.Start(年月,4)),
月 = Number.FromText(Text.End(年月,2)),
年月:Excelから取得する文字列
年:文字列の先頭4文字分を数値に変換
月:文字列の末尾2文字分を数値に変換
相対パスについてはこちらから!

fxボタンをクリックし、以下のコードを入力します。
※直前のステップ名、対象の列名を適宜変更してください。
年と月が一致しているものだけを抽出しています。
= Table.SelectRows(変更された型, each Date.Year([日付])= 年 and Date.Month([日付])= 月)
まとめ
今回はPowerQueryでセルの値を使って日付をフィルターする方法についてご紹介しました。
Excel のセルに処理月を入力するだけで、Power Query 内で動的に日付をフィルターできるようになりますのでぜひ活用してみてください。
AI・Microsoft 365 活用を業務改善につなげたい企業向けに、研修・導入支援・活用サポートを行っています。
「どんなことを依頼できる?」「実際の活用事例は?」という方は、ぜひ無料資料をご覧ください。
\ 業務効率化・補助金情報をお届け/
\ 活用事例も掲載しています /
ご質問やご相談などがございましたら、ぜひお気軽にお問い合わせください。
\2営業日以内にご返信! /

