คลังสูตรExcel 80 · DAX 95 · M 15
ในหน้านี้
หน้าแรก › DAX › เทียบช่วงเวลา (Time Intelligence) › DATESBETWEEN

DATESBETWEEN

DAX · Power BIเทียบช่วงเวลา (Time Intelligence)ระดับกลางแบบ 5 · มีเฉพาะใน DAX

อัปเดต 27 ก.ย. 2569 · ตัวเลขในตัวอย่างตรงกับตัวคำนวณอ้างอิงที่เขียนแยก และสูตร Excel ที่คำนวณจากข้อมูลชุดเดียวกัน · ยังไม่ได้ตรวจใน Power BI Desktop

เอกสารอ้างอิง: DATESBETWEEN (Microsoft Learn) · syntax และหมายเหตุในหน้านี้ตรวจกับหน้านี้ของ Microsoft · ตัวจำลองในหน้านี้รองรับเฉพาะรูปแบบที่ใช้ในตัวอย่าง (เช่น ไม่รองรับ calendar-based time intelligence)

DATESBETWEEN คืออะไร

คืนตารางวันที่ตั้งแต่วันเริ่มถึงวันสิ้นสุด (รวมทั้งสองวัน) ใส่ค่าว่างที่วันเริ่มเพื่อเริ่มจากวันแรกของตาราง ใช้ทำยอดสะสมตั้งแต่เริ่มขาย

ใช้เมื่อไหร่

  • ยอดสะสมตั้งแต่วันเริ่มข้อมูลจนถึงวันที่ในแถว (running total)
  • กำหนดช่วงวันที่เริ่มและสิ้นสุดเองในสูตร

รูปแบบสูตร

=DATESBETWEEN(<dates or calendar>, <StartDate>, <EndDate>)

Argument แต่ละตัว

ชี้ที่ argument ในรูปแบบสูตรด้านบนเพื่อไฮไลต์แถวนั้น

Argumentจำเป็นไหมความหมาย
datesจำเป็นคอลัมน์วันที่ของตาราง Date
StartDateจำเป็นวันเริ่ม ใส่ BLANK() = วันแรกของคอลัมน์
EndDateจำเป็นวันสิ้นสุด ใส่ BLANK() = วันสุดท้ายของคอลัมน์

ลองเลย: ยอดขายสะสมตั้งแต่เริ่มขาย รายเดือน

คลิกตัวเลขในตารางเพื่อดูตัวกรองไหลผ่านโมเดลจนเป็นตัวเลขนั้น เลือกค่าใน Slicer แก้ Measure ได้ หรือกด Excel เพื่อดูสูตร Excel ที่ได้คำตอบเดียวกัน

[ยอดขาย] = SUMX('ยอดขาย', 'ยอดขาย'[จำนวน] * 'ยอดขาย'[ราคาต่อหน่วย] * (1 - 'ยอดขาย'[ส่วนลด]))
Ctrl + Enter คำนวณ · พิมพ์ ' เลือกตาราง · [ เลือกคอลัมน์หรือ Measure
  • พนักงานขายไม่มีตัวกรอง
  • สินค้าไม่มีตัวกรอง
  • วันที่[Date] 1/1/2024 ถึง 31/1/2025
  • ยอดขายเหลือ 259 จาก 495 แถว · หนึ่งจุดคือหนึ่งคำสั่งซื้อ
ยอดขายสะสมตั้งแต่เริ่มขาย รายเดือน
ยอดขายสะสมตั้งแต่เริ่มขาย รายเดือน · ใช้ลูกศรเลื่อนระหว่างช่อง Enter เพื่อดูว่าตัวเลขนั้นคำนวณอย่างไร
เดือนยอดขายยอดสะสมตั้งแต่เริ่มขาย
ม.ค.
ก.พ.
มี.ค.
เม.ย.
พ.ค.
มิ.ย.
ก.ค.
ส.ค.
ก.ย.
ต.ค.
พ.ย.
ธ.ค.
ยอดรวม
3,786,574ยอดสะสมตั้งแต่เริ่มขาย · ม.ค. · 2025
ดูทีละขั้นขั้น 6 / 6

ถ้าคุณเขียน Excel อยู่แล้ว

EXCEL=SUMIFS(ยอดขาย[ยอดสุทธิ], ยอดขาย[วันที่], "<="&EOMONTH(DATE(2025,3,1),0))

Excel ใส่เงื่อนไขวันที่ด้านเดียวเพื่อสะสมตั้งแต่ต้น

DAXยอดสะสมตั้งแต่เริ่มขาย = CALCULATE([ยอดขาย], DATESBETWEEN('วันที่'[Date], BLANK(), MAX('วันที่'[Date])))

สะสมข้ามปีได้ ต่างจาก TOTALYTD ที่เริ่มใหม่ทุกปี

ข้อผิดพลาดและเคล็ดลับ

ปี 2025 แถว ม.ค. รวมยอดทั้งปี 2024 ด้วย เพราะสะสมตั้งแต่วันแรกของตาราง Date
BLANK() ที่วันเริ่มหมายถึงวันแรกของคอลัมน์ และ BLANK() ที่วันสิ้นสุดหมายถึงวันสุดท้าย ตามเอกสาร Microsoft
ช่วงวันที่ตายตัว เช่น ปีงบประมาณ 1 ต.ค. 2024 ถึง 30 ก.ย. 2025 เขียนด้วย DATESBETWEEN('วันที่'[Date], DATE(2024, 10, 1), DATE(2025, 9, 30))

แบบทดสอบ 3 ข้อ

1. DATESBETWEEN('วันที่'[Date], BLANK(), MAX('วันที่'[Date])) ได้ช่วงใด

2. ใส่ StartDate เป็น 1 ม.ค. 2020 แต่ตาราง Date เริ่ม 1 ม.ค. 2024 ผลเริ่มที่วันใด

3. DATESBETWEEN รวมวันที่เริ่มและวันสิ้นสุดหรือไม่

ไฟล์ฝึก DATESBETWEEN

9Expert-DAX-DATESBETWEEN-Practice-v1.0.xlsx

รุ่น 1.0 · 26/9/2026 · 70 KB · ไม่มี Macro · นำเข้า Power BI แล้วทำโจทย์ พิมพ์คำตอบกลับในไฟล์ ตรวจเอง
เริ่มต้นยอดขายสินค้าพนักงานขายวันที่คงคลังเป้าภูมิภาคแบบฝึกหัดเฉลย

โจทย์ในชีตแบบฝึกหัด

  1. ข้อ 1[ยอดสะสมตั้งแต่เริ่มขาย] ยอดขายสะสมตั้งแต่ ม.ค. 2024 ถึงสิ้นเดือนที่กรอง · กรอง ปี = 2025, เดือน = ก.ค.
  2. ข้อ 2[ยอดสะสมตั้งแต่เริ่มขาย] ยอดขายสะสมตั้งแต่ ม.ค. 2024 ถึงสิ้นเดือนที่กรอง · กรอง ช่องทาง = Online, ปี = 2025, เดือน = ธ.ค.
  3. ข้อ 3[ยอดขาย] ยอดขายของช่วงที่กรอง · กรอง ปี = 2025, เดือน = พ.ค.
  4. ข้อ 4[ยอดขาย] ยอดขายของช่วงที่กรอง · กรอง ช่องทาง = Modern Trade, ปี = 2025, เดือน = ต.ค.
  5. ข้อ 5[ยอดขาย] ยอดขายของช่วงที่กรอง · กรอง ปี = 2025

ไปต่อ

อยากเขียน DAX สำหรับรายงานจริงทั้งระบบ

ต่อยอดใน Data Analysis Expression (DAX) for Power BI: Measures, X Aggregation, CALCULATE, Date Table และ Time Intelligence (2 วัน)

ดูหลักสูตร