คลังสูตรExcel 80 · DAX 95 · M 15
ในหน้านี้
หน้าแรก › DAX › สรุปค่า (Aggregation) › AVERAGEX

AVERAGEX

DAX · Power BIสรุปค่า (Aggregation)ระดับกลางแบบ 3 · แนวคิดเดียวกัน คนละฟังก์ชัน

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

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

AVERAGEX คืออะไร

คำนวณสูตรทีละแถวของตาราง แล้วหาค่าเฉลี่ยของผลลัพธ์ เช่น ยอดเฉลี่ยต่อคำสั่งซื้อ

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

  • หายอดเฉลี่ยต่อคำสั่งซื้อ ต่อลูกค้า หรือต่อสินค้า
  • เฉลี่ยค่าที่ต้องคำนวณในแต่ละแถวก่อน

รูปแบบสูตร

=AVERAGEX(<table>, <expression>)

Argument แต่ละตัว

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

Argumentจำเป็นไหมความหมาย
tableจำเป็นตารางที่จะไล่คำนวณทีละแถว
expressionจำเป็นสูตรที่คำนวณในแต่ละแถว ผลที่ว่างไม่ถูกนับในค่าเฉลี่ย

ลองเลย: ยอดเฉลี่ยต่อคำสั่งซื้อ แยกตามหมวดสินค้า

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

[ยอดขาย] = SUMX('ยอดขาย', 'ยอดขาย'[จำนวน] * 'ยอดขาย'[ราคาต่อหน่วย] * (1 - 'ยอดขาย'[ส่วนลด]))
Ctrl + Enter คำนวณ · พิมพ์ ' เลือกตาราง · [ เลือกคอลัมน์หรือ Measure
  • พนักงานขายไม่มีตัวกรอง
  • สินค้า[หมวดสินค้า] = "เครื่องดื่ม"
  • วันที่[ปี] = 2025
  • ยอดขายเหลือ 81 จาก 495 แถว · หนึ่งจุดคือหนึ่งคำสั่งซื้อ
ยอดเฉลี่ยต่อคำสั่งซื้อ แยกตามหมวดสินค้า
ยอดเฉลี่ยต่อคำสั่งซื้อ แยกตามหมวดสินค้า · ใช้ลูกศรเลื่อนระหว่างช่อง Enter เพื่อดูว่าตัวเลขนั้นคำนวณอย่างไร
หมวดสินค้ายอดเฉลี่ยต่อคำสั่งซื้อยอดขาย
เครื่องดื่ม
ขนมขบเคี้ยว
อาหารสำเร็จรูป
ผลิตภัณฑ์นม
เครื่องปรุงรส
ของใช้ในครัวเรือน
ยอดรวม
12,159ยอดเฉลี่ยต่อคำสั่งซื้อ · เครื่องดื่ม · 2025
ดูทีละขั้นขั้น 3 / 3

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

EXCEL=AVERAGEIFS(ยอดขาย[ยอดสุทธิ], ยอดขาย[ภูมิภาค], "กลาง")

Excel ต้องมีคอลัมน์ยอดสุทธิก่อนจึงเฉลี่ยได้ AVERAGEX คำนวณทีละแถวให้เอง

DAXยอดเฉลี่ยต่อคำสั่งซื้อ = AVERAGEX('ยอดขาย', 'ยอดขาย'[จำนวน] * 'ยอดขาย'[ราคาต่อหน่วย] * (1 - 'ยอดขาย'[ส่วนลด]))

ตารางที่ส่งให้กำหนดว่าเฉลี่ยต่ออะไร

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

เปลี่ยนตารางแรกเป็น 'สินค้า' แล้วเรียก Measure ยอดขาย จะได้ยอดเฉลี่ยต่อสินค้าแทนต่อคำสั่งซื้อ ตารางแรกกำหนดว่าเฉลี่ยต่ออะไร
AVERAGEX ไม่นับแถวที่ expression ได้ค่าว่าง แต่นับแถวที่ได้ 0
ยอดเฉลี่ยต่อคำสั่งซื้อเท่ากับ DIVIDE([ยอดขาย], COUNTROWS('ยอดขาย')) เลือกเขียนแบบที่ทีมอ่านง่ายกว่า

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

1. AVERAGEX('ยอดขาย', …) หาค่าเฉลี่ยต่ออะไร

2. ถ้า expression ได้ค่าว่างในบางแถว AVERAGEX ทำอย่างไร

3. สูตรใดได้ค่าเท่ากับยอดเฉลี่ยต่อคำสั่งซื้อจาก AVERAGEX (เมื่อทุกแถวมียอด)

ไฟล์ฝึก AVERAGEX

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

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

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

  1. ข้อ 1[ยอดเฉลี่ยต่อคำสั่งซื้อ] ยอดขายสุทธิเฉลี่ยต่อคำสั่งซื้อ · กรอง หมวดสินค้า = ขนมขบเคี้ยว, ปี = 2024
  2. ข้อ 2[ยอดเฉลี่ยต่อคำสั่งซื้อ] ยอดขายสุทธิเฉลี่ยต่อคำสั่งซื้อ · กรอง หมวดสินค้า = ผลิตภัณฑ์นม, ช่องทาง = Traditional Trade, ปี = 2025
  3. ข้อ 3[ยอดขาย] ยอดขายสุทธิ (จำนวน × ราคาต่อหน่วย × (1 − ส่วนลด)) · กรอง หมวดสินค้า = ของใช้ในครัวเรือน, ปี = 2025
  4. ข้อ 4[ยอดขาย] ยอดขายสุทธิ (จำนวน × ราคาต่อหน่วย × (1 − ส่วนลด)) · กรอง หมวดสินค้า = เครื่องปรุงรส, ช่องทาง = Online, ปี = 2024
  5. ข้อ 5[ยอดขาย] ยอดขายสุทธิ (จำนวน × ราคาต่อหน่วย × (1 − ส่วนลด)) · กรอง ปี = 2024

ไปต่อ

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

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

ดูหลักสูตร