逆引きFormula 2.0 に戻る
カレンダーでタスクを設定すると日付範囲で設定されます。一方で、ボタンやオートメーションでは開始・終了を別のプロパティに設定しなければなりません。これらの処理では日付範囲の終了時刻が設定できないからです。これらを Notion カレンダーに表示するためには、どちらのパターンでも日付範囲に設定する必要があります。このためにまず Start date と Finish date に対して、_finishTime という終了時刻を得る Formula を作成します。_finishTime は以下のように場合ごとに設定されます。
Finish date が存在 → Finish date を設定
Finish date がなく、Start date が空か Start date に日付が設定されていない → Start date を設定
Finish date がなく、Start date の終了時刻と開始時刻が等しい(終了時刻が設定されていない) → 現在時刻を設定
Finish date がなく Start date の終了時刻と開始時刻が異なる → Start date の終了時刻を設定
lets(
sd, prop("Start date"),
fd, prop("Finish date"),
hhmm, sd.formatDate("HHmm"),
ifs(
fd.empty().not(), fd,
sd.empty() or hhmm == "0000", sd,
sd.dateEnd() == sd.dateStart(), now(),
sd.dateEnd()
)
)
→ lets, formatDate, ifs, empty, ==, equal, dateEnddateStartnow
NotionCalendarDate は Start date の開始時刻と _finishTime の日付範囲を作成するだけです。
prop("Start date").dateRange(prop("_finishTime"))