คลังสูตรExcel 80 · DAX 95 · M 15
ในหน้านี้
หน้าแรก › DAX › วันที่ (Date) › STARTOFYEAR

STARTOFYEAR

DAX · Power BIวันที่ (Date)ระดับพื้นฐานแบบ 3 · แนวคิดเดียวกัน คนละฟังก์ชัน

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

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

STARTOFYEAR คืออะไร

คืนวันแรกของปีในตัวกรองปัจจุบัน เป็นตารางหนึ่งแถวที่ใช้เป็นวันที่ได้ เช่น นับวันที่ผ่านไปตั้งแต่ต้นปี

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

  • นับวันที่ผ่านไปตั้งแต่ต้นปี
  • หายอดเฉลี่ยต่อวันตั้งแต่ต้นปี

รูปแบบสูตร

=STARTOFYEAR(<dates> or <calendar>)

Argument แต่ละตัว

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

Argumentจำเป็นไหมความหมาย
datesจำเป็นคอลัมน์วันที่ของตาราง Date
[YearEndDate]ไม่บังคับวันสิ้นปีบัญชี (หน้านี้ยังไม่รองรับ)

ลองเลย: ยอดเฉลี่ยต่อวันตั้งแต่ต้นปี

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

[วันต้นปี] = STARTOFYEAR('วันที่'[Date])
[วันนับจากต้นปี] = DATEDIFF(STARTOFYEAR('วันที่'[Date]), MAX('วันที่'[Date]), DAY) + 1
[ยอดขาย] = SUMX('ยอดขาย', 'ยอดขาย'[จำนวน] * 'ยอดขาย'[ราคาต่อหน่วย] * (1 - 'ยอดขาย'[ส่วนลด]))
Ctrl + Enter คำนวณ · พิมพ์ ' เลือกตาราง · [ เลือกคอลัมน์หรือ Measure
  • พนักงานขายไม่มีตัวกรอง
  • สินค้าไม่มีตัวกรอง
  • วันที่[ปี] = 2025[ชื่อเดือน] = "ม.ค."
  • ยอดขายเหลือ 23 จาก 495 แถว · หนึ่งจุดคือหนึ่งคำสั่งซื้อ
ยอดเฉลี่ยต่อวันตั้งแต่ต้นปี
ยอดเฉลี่ยต่อวันตั้งแต่ต้นปี · ใช้ลูกศรเลื่อนระหว่างช่อง Enter เพื่อดูว่าตัวเลขนั้นคำนวณอย่างไร
เดือนวันต้นปีวันนับจากต้นปียอดเฉลี่ยต่อวันตั้งแต่ต้นปียอดขาย
ม.ค.
ก.พ.
มี.ค.
เม.ย.
พ.ค.
มิ.ย.
ก.ค.
ส.ค.
ก.ย.
ต.ค.
พ.ย.
ธ.ค.
ยอดรวม
12,697ยอดเฉลี่ยต่อวันตั้งแต่ต้นปี · ม.ค. · 2025
ดูทีละขั้นขั้น 8 / 8

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

EXCEL=DATE(YEAR(A2),1,1)

Excel สร้างวันที่ 1 ม.ค. ของปีนั้นเอง

DAXวันนับจากต้นปี = DATEDIFF(STARTOFYEAR('วันที่'[Date]), MAX('วันที่'[Date]), DAY) + 1

จำนวนวันตั้งแต่ 1 ม.ค. ถึงวันสุดท้ายของแถว

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

ทุกแถวของปีเดียวกันได้วันที่ 1 ม.ค. เดียวกัน ส่วน MAX('วันที่'[Date]) เปลี่ยนไปตามเดือนในแถว
ปีบัญชีที่ไม่ได้เริ่มเดือน ม.ค. ใส่ YearEndDate ได้ใน Power BI แต่หน้านี้ยังไม่รองรับ
STARTOFYEAR ให้ผลเป็นตารางหนึ่งแถว ใช้เป็นตัวกรองใน CALCULATE ได้ เช่น ยอดของวันที่ 1 ม.ค.

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

1. แถว มี.ค. 2025 ของ STARTOFYEAR('วันที่'[Date]) ได้อะไร

2. DATEDIFF(STARTOFYEAR(…), MAX('วันที่'[Date]), DAY) + 1 ในแถว ม.ค. ได้เท่าใด

3. Excel ใช้สูตรใดได้วันที่ 1 ม.ค. ของปีในช่อง A2

ไฟล์ฝึก STARTOFYEAR

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

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

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

  1. ข้อ 1[ยอดเฉลี่ยต่อวันตั้งแต่ต้นปี] ยอดขายสะสมตั้งแต่ต้นปีหารด้วยจำนวนวันที่ผ่านไป · กรอง ปี = 2025, เดือน = ก.ค.
  2. ข้อ 2[ยอดเฉลี่ยต่อวันตั้งแต่ต้นปี] ยอดขายสะสมตั้งแต่ต้นปีหารด้วยจำนวนวันที่ผ่านไป · กรอง ช่องทาง = Online, ปี = 2025, เดือน = ธ.ค.
  3. ข้อ 3[วันนับจากต้นปี] จำนวนวันตั้งแต่ 1 ม.ค. ถึงวันสุดท้ายของเดือนในแถว · กรอง ปี = 2025, เดือน = พ.ค.
  4. ข้อ 4[ยอดขาย] ยอดขายสุทธิ (จำนวน × ราคาต่อหน่วย × (1 − ส่วนลด)) · กรอง ช่องทาง = Modern Trade, ปี = 2025, เดือน = ต.ค.
  5. ข้อ 5[วันนับจากต้นปี] จำนวนวันตั้งแต่ 1 ม.ค. ถึงวันสุดท้ายของเดือนในแถว · กรอง ปี = 2025

ไปต่อ

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

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

ดูหลักสูตร