月曜始まりの今週

月曜始まりの今週

月曜始まりの今週にフラグを立てる数式を作成しました。ほかの日付関連の数式や関連記事を集めました。
月曜始まりの今週
41
月曜始まりの今週
chirosuke
2022/09/13 17:00:27
地域の設定が「日本語 (日本)」の場合は、1週間は日曜から始まります。
月曜始まりに変更する方法の検証と、レポートの集計期間単位の週を月曜始まりにする方法は「レポートの週単位での集計時、日曜日始まりを月曜にしたい」で紹介されています。

レポートやリストビューで使用できる相対日付の「今週」なども日曜始まりですので、こちらの記事では月曜始まりの1週間を指定する方法として、該当日の場合にフラグを立てる数式を紹介いたします。

おまけとして、月末、曜日の表示、日付/時間の加算・減算などの紹介や、過去に紹介された日付関連の数式の記事のリンクをまとめてみました。




今週、先週、来週フラグ

相対日付の代わりに使用する数式項目の数式です。
※"日付項目"を、対象の日付項目のAPI名に置換してください。

今週フラグ

対象日付が月曜始まりの”今週”の場合にTrue

AND(

日付項目 >= TODAY()-MOD (TODAY() - DATE(1900, 1, 8), 7 ),

日付項目 <= TODAY()+ 6-MOD ( TODAY() - DATE(1900, 1, 8), 7 )

)



先週フラグ

対象日付が月曜始まりの”先週”の場合にTrue

AND(

日付項目  >= TODAY()-MOD (TODAY() - DATE(1900, 1, 8), 7 )-7,

日付項目 <= TODAY()+ 6-MOD ( TODAY() - DATE(1900, 1, 8), 7 )-7

)



来週フラグ

対象日付が月曜始まりの”来週”の場合にTrue

AND(

日付項目  >= TODAY()-MOD (TODAY() - DATE(1900, 1, 8), 7 )+7,

日付項目 <= TODAY()+ 6-MOD ( TODAY() - DATE(1900, 1, 8), 7 )+7

)




レポートの実行日は「2022/9/12」です。






おまけ

※"日付項目"を、対象の日付項目のAPI名に置換してください。

月末フラグ

対象日付が”月末”の場合にTrue

IF(MONTH(日付項目)=12,

DAY(日付項目)=31,

MONTH(日付項目+1)-MONTH(日付項目)=1

)



月末表示

対象日付の”月末”を表示する

IF(

MONTH(日付項目)=12,

DATE(YEAR(日付項目),12,31),

DATE(YEAR(日付項目),MONTH(日付項目)+1,1)-1

)



曜日の表示

対象日付の”曜日”を表示する

CASE(WEEKDAY(日付項目) ,

1, "日曜日",

2, "月曜日",

3, "火曜日",

4, "水曜日",

5, "木曜日",

6, "金曜日",

"土曜日"

)



日の加算・減算

対象の日付または日付/時間に”N日”を加算(減算は“-”にする)

日付または日付/時間項目+N



時間の加算・減算

対象の日付/時間に”N時間”を加算(減算は“-”にする)

日付/時間項目+(N/24)



分の加算・減算

対象の日付/時間に”N分”を加算(減算は“-”にする)

日付/時間項目+(N/24/60)





日付関連の数式の記事

レポートの週単位での集計時、日曜日始まりを月曜にしたい
年齢を年度で計算する数式
数式で年齢を「○歳○ヵ月」で表示したい(満年齢)
LPAD関数で日付項目の月をテキストで取り出す際に1桁の月の前に0をつける
2019年5月1日~12月31日までを「令和元年」と表示したい
数式のお勉強:日付から該当月に日曜日が何回あるかを計算する数式
gilde tech(for Salesforce)」に入会しませんか?
登録すると、「gilde tech」に掲載されているSalesforceのノウハウを全部閲覧できるだけでなく、自分が知っている知識を発信し、他の会員と交流することもできます。
またSalesforceの知識習得に役立つイベント情報も得ることができます。
是非ここで得た知識を業務に活かしてください!
41
コメント
2022-09-14 Wednesday
3
おまけの数式について簡素化できましたのでコメントします。
〇月末フラグ
「12月以外の月末の場合、翌日だと月が1増える」ことをIF文で表したものと思いますが、簡素化すると「月末の場合、翌日だと月の数字が変わる」と言えるので以下で対応可能と思います。
--
MONTH(日付項目+1)-MONTH(日付項目)<>0
--
〇月末表示
ADDMONTHS関数を用いてIF文を不要とします。
--
DATE(YEAR(ADDMONTHS(date__c,1)),MONTH(ADDMONTHS(date__c,1)),1)-1
--
コンパイル後数式サイズは記載いただいたものだと614文字、上記数式は373文字でした。
1
本投稿の数式は概ね
https://help.salesforce.com/s/articleView?id=sf.formula_examples_dates.htm&type=5&language=ja
を参考にされたのかと思います。
数式自体の分かりやすさと数式サイズの縮小は相反することが多いので、私にとっても悩みどころです。
1
Mark Hammerさん
簡素化ありがとうございます!
日付の数式は苦手でいつも時間がかかってしまい苦労してるので、他にもおすすめの数式などありましたらコメントや記事の投稿をお願いいたします🙇‍♀️