CALCULATETABLE
อัปเดต 27 ก.ย. 2569 · ตัวเลขในตัวอย่างตรงกับตัวคำนวณอ้างอิงที่เขียนแยก และสูตร Excel ที่คำนวณจากข้อมูลชุดเดียวกัน · ยังไม่ได้ตรวจใน Power BI Desktop
เอกสารอ้างอิง: CALCULATETABLE (Microsoft Learn) · syntax และหมายเหตุในหน้านี้ตรวจกับหน้านี้ของ Microsoft · ตัวจำลองในหน้านี้รองรับเฉพาะรูปแบบที่ใช้ในตัวอย่าง (เช่น ไม่รองรับ calendar-based time intelligence)
CALCULATETABLE คืออะไร
คืนตารางที่คำนวณในตัวกรองที่เปลี่ยนแล้ว ทำงานเหมือน CALCULATE แต่ได้ตาราง ใช้สร้างรายการที่ต้องการ เช่น ลูกค้าที่เคยซื้อ Online
ใช้เมื่อไหร่
- สร้างตารางที่เปลี่ยนตัวกรอง เช่น ลูกค้าที่ซื้อทาง Online เพื่อใช้ต่อในสูตร
- เตรียมตารางให้ INTERSECT, EXCEPT หรือ COUNTROWS
รูปแบบสูตร
Argument แต่ละตัว
ชี้ที่ argument ในรูปแบบสูตรด้านบนเพื่อไฮไลต์แถวนั้น
| Argument | จำเป็นไหม | ความหมาย |
|---|---|---|
| expression | จำเป็น | ตาราง หรือฟังก์ชันที่ให้ตาราง เช่น VALUES('ยอดขาย'[รหัสลูกค้า]) |
| filter1, filter2, … | จำเป็น | ตัวกรองแบบเดียวกับ CALCULATE |
ลองเลย: ลูกค้าที่ซื้อ Online แยกตามภูมิภาค
คลิกตัวเลขในตารางเพื่อดูตัวกรองไหลผ่านโมเดลจนเป็นตัวเลขนั้น เลือกค่าใน Slicer แก้ Measure ได้ หรือกด Excel เพื่อดูสูตร Excel ที่ได้คำตอบเดียวกัน
- พนักงานขาย[ภูมิภาค] = "กลาง"
- สินค้าไม่มีตัวกรอง
- วันที่[ปี] = 2025
- ยอดขายเหลือ 96 จาก 495 แถว · หนึ่งจุดคือหนึ่งคำสั่งซื้อ
| ภูมิภาค | ลูกค้าที่ซื้อ | ลูกค้าที่ซื้อ Online |
|---|---|---|
| กลาง | ||
| เหนือ | ||
| ตะวันออกเฉียงเหนือ | ||
| ตะวันออก | ||
| ใต้ | ||
| ยอดรวม |
ถ้าคุณเขียน Excel อยู่แล้ว
=ROWS(UNIQUE(FILTER(ยอดขาย[รหัสลูกค้า], (ยอดขาย[ภูมิภาค]="กลาง")*(ยอดขาย[ช่องทาง]="Online"))))Excel ใส่ทุกเงื่อนไขใน FILTER เอง
ลูกค้าที่ซื้อ Online = COUNTROWS(CALCULATETABLE(VALUES('ยอดขาย'[รหัสลูกค้า]), 'ยอดขาย'[ช่องทาง] = "Online"))เงื่อนไขช่องทางแทนที่ตัวกรองช่องทางจาก Slicer
ข้อผิดพลาดและเคล็ดลับ
แบบทดสอบ 3 ข้อ
1. CALCULATETABLE ต่างจาก CALCULATE อย่างไร
ตัวกรองทำงานเหมือนกัน
2. ตัวกรอง 'ยอดขาย'[ช่องทาง] = "Online" ใน CALCULATETABLE ทำอะไรกับ Slicer ช่องทาง
เหมือน CALCULATE ถ้าต้องการเก็บ Slicer ไว้ใช้ KEEPFILTERS
3. CALCULATETABLE ต่างจาก FILTER อย่างไร
FILTER เพิ่มเงื่อนไขได้แต่ไม่ลบตัวกรองเดิม
ไฟล์ฝึก CALCULATETABLE
9Expert-DAX-CALCULATETABLE-Practice-v1.0.xlsx
โจทย์ในชีตแบบฝึกหัด
- ข้อ 1[ลูกค้าที่ซื้อ Online] จำนวนลูกค้าที่ซื้อผ่านช่องทาง Online · กรอง ภูมิภาค = ใต้, ปี = 2024
- ข้อ 2[ลูกค้าที่ซื้อ Online] จำนวนลูกค้าที่ซื้อผ่านช่องทาง Online · กรอง ภูมิภาค = ตะวันออกเฉียงเหนือ, ช่องทาง = Online, ปี = 2025
- ข้อ 3[ลูกค้าที่ซื้อ Online] จำนวนลูกค้าที่ซื้อผ่านช่องทาง Online · กรอง ภูมิภาค = เหนือ, ปี = 2025
- ข้อ 4[ลูกค้าที่ซื้อ Online] จำนวนลูกค้าที่ซื้อผ่านช่องทาง Online · กรอง ภูมิภาค = ตะวันออก, ช่องทาง = Modern Trade, ปี = 2024
- ข้อ 5[ลูกค้าที่ซื้อ Online] จำนวนลูกค้าที่ซื้อผ่านช่องทาง Online · กรอง ปี = 2025
ไปต่อ
ต่อยอดใน Data Analysis Expression (DAX) for Power BI: Measures, X Aggregation, CALCULATE, Date Table และ Time Intelligence (2 วัน)