ユーザー定義関数コレクション No.006|FirstDay 関数

Power Apps
この記事は約3分で読めます。

Power Appsで「今月の1日」や「来月の1日」を取得したいと思ったことはありませんか?

例えば、月次レポートの期間設定や、カレンダー表示の基準日として月の1日が必要になる場面は多いですよね。標準の関数だけでも実現できますが、毎回Date関数とYear関数、Month関数を組み合わせて書くのは少し面倒です。

ほかにも、「3ヶ月後の1日」とか、「半年前の1日」とか。

そんな時に便利なのが、今回ご紹介するFirstDay関数です。このユーザー定義関数を使えば、指定した数値で月を加算・減算した1日を簡単に取得できるようになります。

Power Apps のユーザー定義関数とは?

ユーザー定義関数は Power Apps 内でプログラミングでいうところのメソッドを定義できる機能で、ユーザーごとに独自の関数を作成し、それをアプリ内で利用できる機能のことです。

FirstDay関数とは

この関数は、PowerFxで作成したユーザー定義関数で、以下のパラメータを指定して利用します:

  • 月のオフセット値 monthOffset

使い方の具体例

実際にどのように動作するのか見てみましょう。

まずは具体的な関数の式を紹介します。

powerFx

FirstDay(monthOffset: Number): Date =
    With(
        {targetDate: DateAdd(Today(), monthOffset, TimeUnit.Months)},
        Date(Year(targetDate), Month(targetDate), 1)
    );

月のオフセット値を0と指定すると、今月の1日が取得できます。

powerFx

FirstDay(0)  // 2025/11/01

同様に、1と指定すると、来月の1日が取得できるんですね。

powerFx

FirstDay(1)  // 2025/12/01

このような仕組みにより、好きな月の1日を自由に取得できる形となっています。

マイナスの値も指定できるので、過去の月の1日も簡単に取得可能です。

powerFx

FirstDay(-1)  // 2025/10/01(先月の1日)
FirstDay(-6)  // 2025/05/01(半年前の1日)

Sequence関数との組み合わせ

ここで特に便利なのが、Sequence関数との組み合わせです。

この組み合わせを使うことで、連続した月の初めのリストを作ることが可能なんです。

powerFx

Concat(Sequence(6,0),FirstDay(Value),"
")

これだけで、今月から6ヶ月分の月初日が連続したテーブルとして取得できます。

もちろん、Sequence関数の開始数字を-12にしたり、ステップの数値を変更することで、去年の日付から開始にしたり、四半期ごとの日付に変更したりなどが可能です。

powerFx

// 去年の今月から12ヶ月分
Concat(Sequence(13,-12),FirstDay(Value),"
")

どんな場面で使えるの?

このFirstDay関数の利用用途としては、主に以下のような場面で活躍します:

  • 月次レポートの期間設定
  • カレンダーやスケジュール表示の基準日
  • 月ごとのデータフィルタリング
  • 請求期間や集計期間の開始日設定
  • Sequence関数と組み合わせた連続月リストの作成

月の1日を基準とした処理であれば、様々な場面で応用できるでしょう。

さらに学びたい方へ

Power Fxの標準関数にはない機能も、工夫次第で実現できるのがユーザー定義関数の魅力です。ぜひ試してみてください。

Power Apps学習の決定版!コントロール別YouTube再生リスト完全ガイド

Power Appsを学習していて「どのコントロールをどう使えばいいのかわからない」「実際の使い方を動画で見ながら覚えたい」と思ったことはありませんか?

実践的な知識を効率よく身につけられるよう、現在公開している動画を整理したYouTube再生リスト集をご紹介します。

Power Apps 学習リソース一覧

コントロール・機能 リンク
ギャラリー 再生リスト
テキストラベル 再生リスト
テキスト入力 再生リスト
フォーム 再生リスト
ラジオ 再生リスト
スライダー 再生リスト
トグル 再生リスト
コンボボックス 再生リスト
ドロップダウン 再生リスト
ボタン 再生リスト
日付選択 再生リスト
画像 再生リスト
タイマー 再生リスト
コンポーネント 再生リスト
Copilot 再生リスト
クラシックコントロール 再生リスト
表示加工 再生リスト
バリデーション 再生リスト
ひと手間デザイン 再生リスト
ハンズオン 再生リスト
全体Tips 再生リスト
無料配布 再生リスト

コメント

タイトルとURLをコピーしました