Thep Excel

CALENDAR – สร้างตารางวันที่ (Date Table) จากช่วงที่กำหนด

สร้างตารางวันที่ต่อเนื่องกันจากช่วงที่กำหนด

CALENDAR สร้างตารางที่มีคอลัมน์ Date เพียงคอลัมน์เดียว โดยประกอบด้วยวันที่ต่อเนื่องกันตั้งแต่วันเริ่มต้น (StartDate) ถึงวันสิ้นสุด (EndDate) ใช้สำหรับสร้าง Dimension Table สำหรับเรื่องเวลา

=CALENDAR(StartDate, EndDate)

By ThepExcel AI Agent
1 December 2025

Syntax & Arguments

=CALENDAR(StartDate, EndDate)

Argument Type Required Default Description
StartDate date/datetime Yes วันเริ่มต้นของตาราง
EndDate date/datetime Yes วันสิ้นสุดของตาราง

How it works

การสร้างตารางวันที่มาตรฐาน

สร้างตารางวันที่ครอบคลุมช่วงเวลาทั้งหมดของข้อมูลยอดขาย เพื่อใช้กับ Time Intelligence Functions

การสร้างตารางนัดหมาย

สร้างรายการวันที่สำหรับการจองหรือ Slot เวลาที่ว่าง

Examples

ตัวอย่างที่ 1: สร้างวันที่ปี 2023 ทั้งปี

ระบุวันเริ่มต้นและสิ้นสุดแบบเจาะจงด้วยฟังก์ชัน DATE
DAX Formula:

Date Table = CALENDAR( DATE(2023,1,1), DATE(2023,12,31) )

Result:

ตารางที่มีคอลัมน์ Date ตั้งแต่ 1 ม.ค. 2023 ถึง 31 ธ.ค. 2023 (365 แถว)

ตัวอย่างที่ 2: สร้างวันที่ครอบคลุมข้อมูลการขาย (Dynamic)

ใช้ MIN และ MAX เพื่อดึงวันที่จากตาราง Sales มาเป็นขอบเขต ทำให้ตารางวันที่ขยายตัวอัตโนมัติตามข้อมูลที่มี
DAX Formula:

Date Table = CALENDAR( MIN(Sales[OrderDate]), MAX(Sales[OrderDate]) )

Result:

ตารางวันที่ตั้งแต่ Order แรกจนถึง Order สุดท้าย

ตัวอย่างที่ 3: เพิ่มคอลัมน์อื่นๆ (Year, Month) ต่อท้าย

ใช้ ADDCOLUMNS ครอบ CALENDAR เพื่อสร้างคอลัมน์เพิ่มเติมสำหรับใช้ใน Axis กราฟ
DAX Formula:

Full Date = ADDCOLUMNS(
    CALENDAR(DATE(2023,1,1), DATE(2023,12,31)),
    "Year", YEAR([Date]),
    "Month", FORMAT([Date], "mmmm")
)

Result:

ตารางที่มีคอลัมน์ Date, Year, Month

FAQs

CALENDAR ต่างจาก CALENDARAUTO อย่างไร?

CALENDAR ให้เรากำหนดช่วงเวลาเองได้อิสระ (ยืดหยุ่นกว่า) ส่วน CALENDARAUTO จะสแกนทั้ง Data Model เพื่อหาช่วงเวลาให้อัตโนมัติ (ง่ายกว่าแต่อาจได้วันที่ไม่ต้องการถ้ามีข้อมูลขยะ)

Resources & Related

Additional Notes

CALENDAR เป็นฟังก์ชันที่ใช้สร้าง ตารางวันที่ (Date Table) ซึ่งเป็นสิ่งจำเป็นที่สุดในการทำ Data Model ใน Power BI หรือ Excel

ฟังก์ชันนี้จะคืนค่าเป็นตารางที่มี 1 คอลัมน์ชื่อ “Date” โดยเริ่มตั้งแต่วันที่ StartDate ถึง EndDate อย่างต่อเนื่องกันทุกวัน (Contiguous Dates) โดยไม่มีวันหยุด

Leave a Reply

Your email address will not be published. Required fields are marked *