Salesforce AppExchange で近日公開

Salesforce で繰り返しの日付パターンを扱う

隔週の火曜日。第 2・第 4 金曜日。毎月の最終土曜日。どれもごく普通の業務ルールですが、Salesforce にはこれを表せる項目がひとつもありません。

公開日 2026 年 6 月 4 日 · 更新日 2026 年 10 月 21 日 · MultiDatePick

Salesforce の繰り返し機能は行動と ToDo にしかありません。スケジュールがカスタムオブジェクト (シフト、セッション、点検、オンコール当番など) にある時点で、自力で何とかするしかなくなります。よくあるのは、誰かが紙のカレンダーで日付を数えて手入力するやり方です。

「繰り返し」には 2 種類ある

よく混同されますが、必要なロジックは別物です。

種別例必要なもの
間隔ベース毎週、2 週間ごと、3 週間ごと曜日と繰り返しの間隔
第 N 週ベース第 1 月曜、第 2・第 4 金曜、最終土曜各月の何回目の曜日か

間隔ベースの繰り返しは開始日から数えていくので、月の区切りは関係ありません。第 N 週ベースは毎月リセットされ、特に「最終」が厄介です。月によって第 4 週にも第 5 週にもなるからです。自作の実装の多くは、この一語で破綻します。

自作するとうまくいかない理由

月の長さが違う

「第 5 月曜」はある月とない月があります。

うるう年

1 年の長さを固定で考えた計算は、すべて知らないうちにずれます。

「隔週」には起点が必要

どの週から数えて隔週なのか。2 人いれば意見が分かれます。

週末と祝日

飛ばす必要があるかもしれず、しかも祝日は自社の組織データの中にあります。

先の日付まで生成しすぎる

誰も頼んでいないレコードが何千件もできてしまいます。

どれも一つひとつは難しくありません。でも全部合わせると 1 週間仕事になり、境界ケースのバグがいつまでも出続けます。

ルールを保存せず、日付を生成する

アルゴリズムの下には設計上の判断があります。ルールを保存して読み込み時に展開するのか、一度展開して結果の日付を保存するのか、です。

Salesforce では、ほぼ必ず日付を保存するほうが正解です。具体的な日付のレコードなら、ほかのデータと同じようにレポート、積み上げ集計、絞り込み、自動化に使えます。保存したルールは使う場所ごとに解釈が必要で、Salesforce のレポートはそれをまったく解釈できません。その代わり、パターンを変えるときは生成し直すことになります。だからこそ、パターンの選択は設定の奥ではなく入力の場に置くべきなのです。

3 つのパターンを画面で見る

まずは曜日のカスタム指定から。これを表せる標準項目はまったくないからです。曜日を好きな組み合わせで選び、間隔と期間を指定すると、保存する前に条件に合う日付がすべてカレンダーに入ります。

MultiDatePick の Salesforce 日付ピッカーで繰り返しパターンを設定するアニメーションデモ: 「繰り返しパターンを追加」、「カスタム日」、金曜、第 2・第 4、3 か月後の終了日を選ぶと 6 回の金曜がプレビューされ、「日付を追加」で 2 か月分のカレンダーに反映される
毎月の第 2・第 4 金曜日: 曜日と回数を選び、日付をプレビューして、まとめて追加します。
曜日を自由に選ぶ Salesforce カレンダーの繰り返しパターンで、期間内の日付を生成
曜日のカスタム指定: 条件に合う日付をすべてカレンダー上に生成。
Salesforce カレンダーの曜日指定の繰り返しパターン選択画面。間隔と期間を指定できる
選択画面: 曜日の切り替えボタン、N 週ごとの間隔、開始日と終了日。

よく使われる 2 つのショートカットが「平日」と「週末」。同じ展開をワンクリックで行います。

Salesforce カレンダーの「平日」パターンで、期間内の月曜から金曜をすべて選択
平日: 期間内の月曜から金曜をすべて。
Salesforce カレンダーの「週末」パターンで、期間内の土曜と日曜をすべて選択
週末: 期間内の土曜と日曜をすべて。シフトの穴埋めやオンコールに。

確定する前に日付を見せる

繰り返し設定の UI にできる最善のことは、結果を見せることです。ユーザーが「2 週間ごとの火曜日」を選んだ瞬間、実際の日付がカレンダー上でハイライトされれば、間違いは翌週ではなく保存直前に見つかります。起点が目に見えるので、「どの週から隔週か」という議論もその場で片付きます。

まとめ方についても同じです。繰り返しの選択で 6 週間分の月曜から金曜ができた場合、30 件のレコードが欲しいこともあれば、週ごとに開始日と終了日を持つ 6 件が欲しいこともあります。選択の時点で決めておくほうが、後で移行するよりはるかに安上がりです。

どちらの繰り返しも標準搭載。Dates コンポーネントは、週の間隔 (1、2、3、N 週ごと) と毎月の第 N 週フィルター (第 1 月曜、第 2・第 4 金曜、最終土曜) の両方に対応します。生成された日付は保存前にカレンダーに表示され、連続する日を 1 件の期間レコードにまとめるかどうかは設定で選べます。

隔週の火曜日をワンクリックで

ライブデモで繰り返しパターンを試してください。保存する前に日付がカレンダーに表示されます。

  • $20/ユーザー/月ですべての機能
  • 30 日間無料、カード不要
  • 100% Salesforce ネイティブ
  • Apex 不要
  • Salesforce AppExchange で近日公開