見出し画像

(BizRobo)直近の指定曜日の日付を抽出する方法

概要

直近のある曜日の日付を取得する方法です。
例えば、今日は2020/12/28の月曜ですが、この日付から最も近い未来の金曜日、
つまり2021/01/01の日付を取得したい、そんなときどうするか、という記事です。


関連ナレッジ

関連しそうなナレッジ探しておきました。
・システム日付を基準に一日前や一週間前などの日付を取得する方法
https://knowledge.bizrobo.com/hc/ja/articles/360036293831

・DSで日付から曜日を取得する方法
https://knowledge.bizrobo.com/hc/ja/articles/360031150151


設定方法

やり方は簡単、まず変数の割当(Assign Variable)ステップを追加します。
値の入力方法を[コンバーター]にし、曜日の値を変数に格納していない場合は、デフォルトで入力されている[変数を取得]を削除します。

画像2

変数に入力しておいたものを使用する場合は曜日が入力された変数を設定してください。
変数を指定せずテキストをベタ打ちする場合は[テキストを追加]で取得したい曜日を入力します。
「金曜日」や「金」の1文字でも構いません。
そして、[日付処理]⇒[日付抽出]でパターン等を設定します。
まずはフォーマットの[+]ボタンを押してフォーマットを設定し、パターンで曜日を示す[E]を入力します。

画像1

画像3

曜日名を日本語で入力している場合はロケールを日本語にすることもお忘れなく。
次に詳細タブに移動し、詳細タブでは時間軸の方向を「未来の日付」に設定します。

画像4

こうすることで、求めたい日付が未来なのか過去なのかが変わります。

ちなみに2020/12/28に金曜日を求めると2020/12/25になります。
クリスマスですね、皆様どんなクリスマスをお過ごしでしたか?
私は妻とゆっくりケーキを食べて過ごしました。

脱線しました…。

設定はこれで以上です!
上の画像のようにテスト出力欄が元日になっていることがわかると思います。

ちなみに現在の日付を基準にしていますが、もし任意の日付を基準にしたい場合、
Date型の形式の日時を変数に入力しておけばその日付を基準にすることも可能です。
その際は[デフォルトの日付]を「指定した日付」に変更し、日付を格納した変数を指定してあげてください。

画像5

そのまま現在の日付を指定すると、今日を含んだ直近の日付を取得しますが、
今日以降の日付を取得したい場合等には、あらかじめコンバーターの「変更日」で日付を加工してみましょう。

全体的にですが、我流でやっているところがありますので、より良い方法や補足等ありましたらご意見いただければ幸いです。

もしよろしければサポートいただければ大変励みになります!そして晩酌代になります!