5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Power Automate での月初日と月末日を取得する方法

Last updated at Posted at 2023-09-17

ごきげんよう、百合宮桜です。
今回はPower Automate における日付に扱い方について書いていきます。
月初は毎月1日と決まっているので簡単ですが、月末は30日の時もあれば、31日の時もある……
2月なんてうるう年かどうかで末尾が変わってくる!!と難しいことばかりですよね。
でも意外と手数少なく取得できます。

2024年09月24日、モダンデザイナーでの方法に変更しました。

月初日の取得方法

これは簡単です。
月の1番初めの日は1日と決まっていて、他はありませんから。
タイムゾーンの変換アクションの書式設定文字列をカスタムすればOKです。
実務で使う場合は、スケジュールされたフローでトリガーすることも多いかと思いますが、今回は簡単のために手動トリガーを使用していきます。

  1. トリガーを選択し、「入力の追加」をクリックします。

    image.png

  2. 「日付」を選択します。

    image.png

  3. 日付入力欄ができました。

    image.png

  4. + > アクションの追加 をクリックします。

    image.png

  5. ランタイムを「組み込み」で絞り込みます。

    image.png

  6. 「Date Time (日時)」を検索、クリックします。

    image.png

  7. タイムゾーンの変換 をクリックします。

    image.png

  8. Base Time(基準時間) に 動的なコンテンツから トリガーの日付 を入れます。

    image.png

    image.png

    検索ボックスに「日付」と入力すると検索できます。
    image.png

    :

  9. Source Time Zone(変換元のタイムゾーン)を「Coordinated Universal Time」に設定します。

    image.png

  10. Destination Time Zone(変換先のタイムゾーン)を「Osaka, Sapporo, Tokyo」に設定します。

    image.png

  11. Time Unit(書式設定文字列)は カスタム値の入力 をクリックします。

    image.png

  12. 以下の式を入力します。

    yyyy/M/01
    

    image.png

これでトリガーで指定した日付の月初日が取れます。

テストで確認しよう。

実際にテストしてみてください。

  1. テストボタンをクリックします。

    image.png

  2. 手動 >テスト をクリックします。

    image.png

  3. トリガーで今日の日付を指定し、フローの実行をクリックします。

    image.png

  4. 完了 をクリックします。

    image.png

  5. タイムゾーンの変換の出力を確認すると、トリガーで指定した月の1日が出力されていることが分かります。

    image.png

月末日の取得方法

これは
①月初日を取得
②月初日の1か月後を計算
③その1か月後の日の1日前を取得する
という形で取得していきます。
つまり、先の月初日の取得方法のフローにアクションを追加する形で作ります。

image.png

この後↑にアクションを追加していきます。

  1. Date Time(日時)コネクタの「時間への追加」をクリックします。

    image.png

  2. Base Time(基準時間)に 動的なコンテンツから 先に取得した月初日 を入れます。

    image.png

  3. Interval(間隔) を「1」、Time Unit(時間単位)を「Month」にします。

    image.png

  4. Date Time(日時)コネクタから 「時間からの減算」アクションを選択します。

    image.png

  5. Base Time(基準時間)に 動的なコンテンツから 時間への追加 > Calculated Time(算出時間) を入れます。

    image.png

  6. Interval(間隔) を「1」、Time Unit(時間単位)を「Day(日)」にします。

    image.png

これで月末日が取得できます。

テストで確認しよう

先ほどと同じ日付を指定して、確認してみます。

image.png

トリガーで指定した月の末日が取得できました。

image.png

2月や8月で試してみればわかりますが、末日が何日でも関係なく、取得できます。
便利なのでぜひ覚えてください

関数でも同じことができるよ

私は初心者向けにノーコードで書きましたが、関数でカッコよく決めたいよね!派は、ヘイシャアりなえもんのポストをご参考にどうぞ!

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?