คลังสูตรExcel 80 · DAX 95 · M 15
ในหน้านี้
หน้าแรก › DAX › ข้อความ › FORMAT

FORMAT

DAX · Power BIข้อความระดับกลางแบบ 3 · แนวคิดเดียวกัน คนละฟังก์ชัน

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

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

FORMAT คืออะไร

แปลงตัวเลขหรือวันที่เป็นข้อความตามรูปแบบที่กำหนด ใช้ต่อข้อความในหัวข้อหรือการ์ด

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

  • ทำข้อความในการ์ด เช่น 1,234,567 บาท
  • ต่อตัวเลขเข้ากับข้อความในหัวข้อ

รูปแบบสูตร

=FORMAT(<value>, <format_string>[, <locale_name>])

Argument แต่ละตัว

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

Argumentจำเป็นไหมความหมาย
valueจำเป็นค่าหรือ Measure ที่ต้องการแปลง
format_stringจำเป็นรูปแบบ เช่น "#,##0" หรือ "0.0%"
[locale_name]ไม่บังคับภาษาและภูมิภาคของรูปแบบ ไม่ใส่ = ตามโมเดล

ลองเลย: ข้อความยอดขายสำหรับการ์ด แยกตามภูมิภาค

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

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

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

EXCEL=TEXT(SUMIFS(ยอดขาย[ยอดสุทธิ], ยอดขาย[ภูมิภาค], "กลาง"), "#,##0") & " บาท"

TEXT ของ Excel กับ FORMAT ของ DAX ใช้รหัสรูปแบบคล้ายกัน

DAXยอดขายข้อความ = FORMAT([ยอดขาย], "#,##0") & " บาท"

ผลเป็นข้อความ เรียงลำดับแบบตัวเลขไม่ได้

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

FORMAT ให้ผลเป็นข้อความ ถ้าใช้เป็น Measure หลักของตาราง การเรียงจากมากไปน้อยจะเรียงแบบตัวอักษร ให้ตั้ง Format ของ Measure แทนเมื่อแค่อยากให้แสดงสวย
FORMAT ของค่าว่างให้ข้อความว่าง ถ้าต่อด้วย & " บาท" แถวที่ไม่มีข้อมูลจะเห็นแค่คำว่า บาท
รูปแบบวันที่และชื่อเดือนขึ้นกับ locale ของโมเดล ใส่ argument ที่สาม เช่น "th-TH" เมื่อต้องการภาษาไทยแน่นอน

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

1. FORMAT([ยอดขาย], "#,##0") ให้ผลเป็นอะไร

2. ถ้าแค่อยากให้ตัวเลขในตารางมีจุลภาค ควรทำอย่างไร

3. ฟังก์ชันใดของ Excel คู่กับ FORMAT

ไฟล์ฝึก FORMAT

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

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

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

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

ไปต่อ

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

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

ดูหลักสูตร