このツールでできること
「次の指定曜日を計算するツール」は、選んだ起算日から見て、特定の曜日に当たる次の日付を教えてくれます。たとえば「次の金曜日はいつ?」といった疑問にすぐ答えられます。さらに、その日付が何日先なのかも表示します。毎週繰り返すタスクのスケジュール調整、「毎週火曜日」の会議の計画、週次の締め切りまでのカウントダウン、特定の曜日に紐づけた習慣づくりなど、さまざまな場面で役立ちます。
使い方
まず起算日を選びます(初期設定では今日の日付)。次にプルダウンから目的の曜日を選択し、起算日がすでにその曜日に当たっている場合に起算日自体を含めるかどうかを指定します。計算結果には、何日先かという日数と、次の日付(年・月・日に分けて表示)、さらにYYYYMMDD形式のコンパクトな日付スタンプが表示されます。
計算式の仕組み
曜日は日曜日=0から土曜日=6まで番号付けされています。このツールはまず起算日の曜日を求め、次の計算を行います。
$$\text{daysAhead} = \big((\text{target} - \text{current})\bmod 7 + 7\big)\bmod 7$$
剰余(mod)を二重に適用することで、引き算の結果がマイナスになった場合でも、答えが必ず0〜6の範囲に収まります。次の日付は単純に「起算日+daysAhead」です。起算日を含めない設定にしていて、起算日がすでに目的の曜日に当たっている場合(\(\text{daysAhead} = 0\))には、まる1週間進めて次の同じ曜日(7日後)を結果とします。
計算例
起算日が2025年1月1日(水曜日)だとします。水曜日は曜日番号3です。次の日曜日(曜日番号0)を知りたい場合、$$\text{daysAhead} = \big((0 - 3)\bmod 7 + 7\big)\bmod 7 = (-3 + 7)\bmod 7 = 4$$ となります。つまり次の日曜日は、1月1日+4日=2025年1月5日です。
よくある質問
起算日がすでに目的の曜日だった場合はどうなりますか? 初期設定では次の週(7日後)に進みます。チェックボックスにチェックを入れると起算日自体をカウントし、結果は0日先になります。
曜日の番号付けはどうなっていますか? 日曜日=0から土曜日=6までで、プルダウンの並び順と一致しています。
月や年をまたぐ場合も正しく計算されますか? はい。月や年(うるう年を含む)をまたいでも、日付の計算は正しく繰り越されます。