在 Excel 中,依照時序排列的日期欄位是一個單欄清單,每一列會在定義的起始與結束日期之間,以嚴格的 YYYY-MM-DD 順序遞進。日期清單產生器正是用來產生這種純文字格式的清單:選擇起始日期、結束日期,以及介於 1 到 366 之間的整數日期間隔,工具便會以嚴格的 YYYY-MM-DD 格式回傳最多 10,000 列,讓你可以直接貼上整欄。由於每一個項目都被視為日曆日期而非時間戳記,當檔案在另一個國家開啟時,日光節約時間的切換與時區的變動都不會使某一列向前或向後移動。結束日期只有在所選間隔正好落在該日時才會包含在內,摘要也會報告這個條件,因此在匯入前可以一目了然地驗證邊界。也可以選擇在每一行附加固定的英文星期名稱作為標籤,當匯入的欄位要餵入行程表、薪資草稿或內容日曆時特別好用。

為什麼 Excel 內建的數列功能常常不再實用
Excel 確實提供了「填滿數列」指令,對於簡短且整齊的範圍而言效果不錯。填滿控點可以將選取的日期以一天、七天、一個月或一年為單位延伸,而「數列」對話方塊則接受以天為單位的間隔值。問題出在數列變長或變得特殊時。一個 365 列的每日清單拖曳起來很費時,需要跨越閏年二月的間隔也容易看錯;而當同事在另一個時區開啟同一個活頁簿時,底層的序列號雖然不會漂移,但顯示的格式可能會因地區而異。無法整除範圍的自訂間隔,也會讓使用者猜不透結束日期是否會出現。對於具有明確起點、終點與間隔的確定性清單,在 Excel 之外產生日期再貼進來,通常比逐格建立欄位更快、也更不容易出錯。
使用日期清單產生器在外部產生數列
日期清單產生器圍繞著一個單一的任務:以選定的整日間隔,列印兩個嚴格端點之間的每一個日曆日期,不會對齊到月份邊界、不會略過週末,也不會做隱含的時區調整。可接受的輸入格式為四位數年份、兩位數月份、兩位數日期,符合 WHATWG HTML 日期標準所定義的日期格式。支援 0001 到 9999 年,月份長度遵循預先延伸的格里高利曆,而閏年規則為「可被 4 整除,但若可被 100 整除則例外,除非同時可被 400 整除」,因此 2000-02-29 為有效日期,1900-02-29 則為無效日期。工具會在目前瀏覽器分頁中於本機驗證每一項輸入,絕不會上傳或儲存範圍,因此在產生的清單接觸到任何試算表之前,都可以先行檢查正確性。
逐步建立日期清單
- 以 YYYY-MM-DD 的格式選擇有效的起始與結束日期,結束日期要等於或晚於起始日期。結束日期只有在所選間隔正好落在該日時才會出現在輸出中,而摘要文字會說明是否發生這種情況。
- 輸入介於 1 到 366 之間的整數日期間隔。間隔為 1 會列出每一個符合資格的日期;間隔為 7 會產生保留星期幾的每週數列;較大的值則會從原始起點開始套用一個規則的自訂間隔,而非對齊到月份邊界。
- 若目標欄位需要在每個日期旁顯示固定英文標籤(例如 Monday 或 Friday),請切換星期名稱選項。這些標籤由相同的序數運算產生,並以 Monday 作為第一個 ISO 星期,因此在任何裝置上,相同的輸入都會得到相同的輸出。
- 檢視摘要區塊中的計算日期數與結束日期狀態,然後從輸出區域讀取逐行的完整結果。日期數的計算方式為 floor((結束序數 - 起始序數) / 間隔) + 1,因此邊界是精確的而非估算的。
- 按下複製按鈕將完整清單送至剪貼簿,或在手動選取唯讀文字區域(若瀏覽器封鎖剪貼簿存取時)。無論哪種方式,輸出都會保持為純文字。
正確地將清單貼入 Excel
由於輸出是每行一個日期的純文字,它可以無需任何公式直接對應到 Excel 欄位。最簡單的工作流程是開啟一個全新的活頁簿,點選 A1 儲存格,然後貼上剪貼簿的內容;每一行會落在 A 欄的獨立列,Excel 會將嚴格的 YYYY-MM-DD 格式辨識為真正的日期值,進而可以格式化、排序或篩選。如果目標活頁簿已有標題列,請貼到 A2,讓第一個產生的日期對齊到標題列下方。若是帶有星期標籤的行程,請將「標籤 + 日期」的格式貼入 A 欄,然後使用「資料剖析」以空格作為分隔符號,在第一個空格處切開,將標籤送入 A 欄、日期送入 B 欄。一個簡短的範例說明邊界檢查:起始 2025-01-01、結束 2025-01-15、間隔 7,則數量為 floor((14 天的差距) / 7) + 1 = 3,因此結果為 2025-01-01、2025-01-08、2025-01-15,且摘要會回報結束日期已到達。對於偏好不需編輯列的 Excel 內建方式的使用者,如何在 Excel 中不使用公式建立日期清單這份逐步說明會並列介紹填滿控點與「數列」對話方塊兩種做法。
一旦日期進到欄位中,欄位標頭可以用類似「日期」這類標籤命名,並透過「儲存格格式」套用 YYYY-MM-DD 的自訂數值格式,使顯示值與來源格式一致。如果匯入的清單超過 1,048,576 列,Excel 的列數上限就會成為下一個限制;產生器上限為 10,000 列,遠低於該上限,並預留空間給其他相關資料欄位。
間隔值一覽
選擇正確的日期間隔是讀者主要要做出的決定,因此下表列出常見的值及其在產生器中實際產生的結果。這些列都不是來自某個範例範圍的計算輸出,而是描述工具為任何一組有效輸入所定義的行為。
| 日期間隔 | 對輸出的影響 |
|---|---|
| 1 | 列出起點到終點之間每個符合資格的日曆日期 |
| 7 | 每週數列;每列的星期幾皆保持一致 |
| 14 | 雙週數列;星期幾保持一致 |
| 30 或 31 | 大約為每月;月份並未對齊,結束日期可能會被略過 |
| 365 或 366 | 逐年步進;跨越閏年邊界時星期幾會位移一或兩天 |
工具如何驗證每一項輸入
嚴格的 YYYY-MM-DD 輸入規則是讓結果可攜的原因,以下幾個簡短的例子說明驗證器的閏年分支在實務中如何運作。這些列都不是計算輸出,而是直接套用解析器中預先延伸的格里高利規則,這也是 ISO 曆法日期與 HTML 日期值所使用的同一套日曆模型。
| 輸入 | 是否接受 | 原因 |
|---|---|---|
| 2000-02-29 | 是 | 年份可被 400 整除,仍為閏年 |
| 1900-02-29 | 否 | 年份可被 100 整除但不可被 400 整除,不是閏年 |
| 2024-02-29 | 是 | 年份可被 4 整除且不可被 100 整除,是閏年 |
| 2025-02-29 | 否 | 年份不可被 4 整除,不是閏年 |
| 2025-04-31 | 否 | 4 月只有 30 天,因此 31 日不可能存在 |
匯入前值得了解的限制
這個產生器的範圍刻意設計得很窄。它不會略過週末、不認得地區性假日、不扣除工作天,也不推算工作天,因此匯入的欄位就是原始的日曆,任何依星期幾進行的篩選都必須在 Excel 中套用。可接受的間隔為 1 到 366 的整數,且不提供以月或年為單位的間隔,因為日曆月與日曆年的算術需要針對 1 月 31 日或 2 月 29 日等日期另設溢位規則;這類任務屬於日期加減運算工具,而非固定日期間隔。超過 10,000 列的要求會失敗並回傳計算後的數量,不會回傳部分清單,因此邊界可以在沒有意外的情況下檢查。驗證機制會拒絕無效的月份數字、不可能存在的日期、不完整的欄位,以及早於起始日期的結束日期;工具絕不會仰賴瀏覽器默默將 4 月 31 日這類不可能的日期向前遞延到 5 月。
最後一點:每日的清單並不代表清單中每一天皆可用或運作。假日、營業時間、薪資週期、學期、開庭日期與宗教曆法都存在於產生器的資料之外,因此每一個匯入的日期在被視為截止日、帳單日或合約里程碑之前,仍應依據目標系統的規則加以檢視。