Thep Excel

ROLLUPGROUPจัดกลุ่มคอลัมน์เพื่อลดจำนวน subtotal ใน roll-up

ROLLUPGROUP ระบุชุดคอลัมน์ที่จะถูกพิจารณาเป็น “กลุ่มเดียว” สำหรับการสร้าง subtotal/roll-up ช่วยลด subtotal บางระดับ และมักใช้ร่วมกับ ROLLUP ใน SUMMARIZE

fx
=ROLLUPGROUP(<GroupColumn>[, <GroupColumn>])

ความนิยม3/10
ความยาก5/10
ประโยชน์3/10

อัปเดต 13 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
GroupColumn column คอลัมน์ที่ต้องการจัดเป็นกลุ่มเดียวสำหรับ roll-up (ระบุซ้ำได้หลายคอลัมน์)

Additional Notes

ROLLUPGROUP ใช้เพื่อ “จัดกลุ่มคอลัมน์” สำหรับการทำ roll-up/subtotal เพื่อช่วยลดจำนวน subtotal ที่เกิดขึ้น โดยเฉพาะเมื่อคุณทำ roll-up หลายคอลัมน์และไม่ต้องการ subtotal บางระดับ (partial subtotals)

ROLLUPGROUP สามารถใช้แทน ROLLUP ภายใน SUMMARIZE ได้ หรือใช้ซ้อนอยู่ใน ROLLUP เพื่อควบคุมการเกิด subtotal ให้เป็นกลุ่มตามที่ต้องการ

How it works

ลด subtotal บางระดับเมื่อมีหลายคอลัมน์

จัดกลุ่มคอลัมน์เพื่อไม่ให้เกิด subtotal แยกย่อยเกินจำเป็น

ควบคุม roll-up ใน SUMMARIZE

ใช้ ROLLUP(ROLLUPGROUP(…)) เพื่อกำหนดรูปแบบ subtotal

Examples

ตัวอย่างที่ 1: ใช้ ROLLUPGROUP ใน ROLLUP (แนวคิด)EVALUATE SUMMARIZE( Sales, ROLLUP(ROLLUPGROUP('Date'[ปี], Customer[Education])), "IsYearSubtotal", ISSUBTOTAL('Date'[ปี]), "IsEduSubtotal", ISSUBTOTAL(Customer[…

ROLLUPGROUP ช่วยจัดคอลัมน์เป็นกลุ่มเดียว เพื่อลด subtotal บางระดับที่ไม่ต้องการ

fx
=EVALUATE
SUMMARIZE(
Sales,
ROLLUP(ROLLUPGROUP('Date'[ปี], Customer[Education])),
"IsYearSubtotal", ISSUBTOTAL('Date'[ปี]),
"IsEduSubtotal", ISSUBTOTAL(Customer[Education]),
"Amount", [Sales Amount]
)

ผลลัพธ์ได้ subtotal ตามกลุ่มที่กำหนด พร้อมคอลัมน์ตรวจ subtotal
ตัวอย่างที่ 2: ใช้ ROLLUPGROUP เดี่ยว ๆ (แนวคิด)แนวคิด: ใช้ ROLLUPGROUP แทน ROLLUP ภายใน SUMMARIZE เพื่อสร้าง roll-up ตามกลุ่มคอลัมน์

เหมาะเมื่อคุณต้องการ subtotal แบบเป็นกลุ่ม ไม่ได้ต้องการทุกระดับย่อย

fx
=แนวคิด: ใช้ ROLLUPGROUP แทน ROLLUP ภายใน SUMMARIZE เพื่อสร้าง roll-up ตามกลุ่มคอลัมน์

ผลลัพธ์ลดความซับซ้อนของ subtotal
ตัวอย่างที่ 3: จัดกลุ่มหลายคอลัมน์ (แนวคิด)แนวคิด: ใช้ ROLLUPGROUP รวมคอลัมน์ที่ต้องการให้ subtotal พร้อมกัน เช่น (ปี, ภูมิภาค) แล้วค่อยทำ ROLLUP เพื่อไม่ให้เกิด subtotal แยกย่อยตามคอลัมน์เดี่ยว

เหมาะเมื่อคุณอยากได้ subtotal แบบ “เป็นชุด” มากกว่าการไล่ subtotal ทีละคอลัมน์

fx
=แนวคิด: ใช้ ROLLUPGROUP รวมคอลัมน์ที่ต้องการให้ subtotal พร้อมกัน เช่น (ปี, ภูมิภาค) แล้วค่อยทำ ROLLUP เพื่อไม่ให้เกิด subtotal แยกย่อยตามคอลัมน์เดี่ยว

ผลลัพธ์ได้ subtotal ตามกลุ่มที่ออกแบบ

FAQs

ROLLUPGROUP ใช้กับฟังก์ชันอะไร?+

ใช้กับ ROLLUP ใน SUMMARIZE และยังพบการใช้งานร่วมกับ ADDMISSINGITEMS ในบางรูปแบบ

ROLLUPGROUP ทำให้ subtotal หายไปแบบไหน?+

โดยแนวคิดคือรวมคอลัมน์หลายตัวให้เป็นกลุ่มเดียวตอนทำ roll-up ทำให้ไม่เกิด subtotal แยกย่อยบางระดับ (partial subtotals) ตามที่คุณจัดกลุ่มไว้

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ ROLLUPGROUP จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้ROLLUPGROUPTable manipulation
Table manipulation (8)
ADDMISSINGITEMS

ADDMISSINGITEMS เติมสมาชิกที่หายไปในผลลัพธ์สรุปแบบกลุ่ม เพื่อให้แสดงครบทุกสมาชิกของคอลัมน์ที่ระบุ เหมาะกับรายงานที่ต้องการเห็นรายการที่ไม่มีข้อมูลด้วย

ROLLUP

ROLLUP บอก SUMMARIZE ให้สร้างแถว subtotal เพิ่มเติมตามคอลัมน์ที่กำหนด ทำให้ได้ทั้งรายละเอียดและรวมย่อยในผลลัพธ์เดียว

ROLLUPADDISSUBTOTAL

ROLLUPADDISSUBTOTAL ใช้ใน SUMMARIZECOLUMNS เพื่อเพิ่มแถว roll-up/subtotal และเพิ่มคอลัมน์ IsSubtotal สำหรับแต่ละระดับที่กำหนด ทำให้แยกแถว subtotal ออกจากรายละเอียดได้ง่าย

ROLLUPISSUBTOTAL

ROLLUPISSUBTOTAL ใช้ใน ADDMISSINGITEMS เพื่อจับคู่กลุ่ม roll-up กับคอลัมน์ IsSubtotal ที่สร้างจาก ROLLUPADDISSUBTOTAL ทำให้การเติมรายการที่ขาดหายทำงานได้ถูกต้องเมื่อมี roll-up/subtotal rows

SUMMARIZE

SUMMARIZE สร้างตารางสรุปโดยจัดกลุ่มข้อมูลตามคอลัมน์ที่กำหนด คล้าย GROUP BY ใน SQL หรือ Pivot Table ใน Excel คืนค่าตารางที่มีหนึ่งแถวต่อหนึ่ง unique combination ของคอลัมน์ที่เลือก สามารถอ้างถึงคอลัมน์จาก related table ได้โดยตรงโดยไม่ต้องใช้ RELATED มักใช้สร้าง virtual table ใน measure เพื่อทำ intermediate calculations ก่อนใช้ iterator functions อย่าง SUMX, AVERAGEX คำนวณต่อ ⚠️ Best Practice: ใช้ ADDCOLUMNS ครอบ SUMMARIZE แทนการใส่ extension columns ตรงๆ เพื่อ performance และ filter context control ที่ดีกว่า สำหรับ calculated table แนะนำใช้ SUMMARIZECOLUMNS แทนเนื่องจากมี performance ดีกว่าอย่างมาก

SUMMARIZECOLUMNS

SUMMARIZECOLUMNS เป็นฟังก์ชันหลักสำหรับสร้างตารางสรุปผล โดยจัดกลุ่มตามคอลัมน์ที่กำหนด พร้อมเพิ่มคอลัมน์คำนวณจากเมเชอร์ และสามารถใส่เงื่อนไขกรองได้ทันที

TOPNPERLEVEL

ฟังก์ชันเชิงเครื่องมือสำหรับเลือกจำนวนแถวสูงสุด (Top N) ต่อ ระดับในโครงสร้างลำดับชั้น (hierarchy) ที่มีการขยาย/ยุบโหนด

TREATAS

TREATAS เป็นเสมือนการสร้าง "virtual relationship" โดยไม่ต้องแก้โมเดล ช่วยให้ส่งเงื่อนไขข้ามตารางที่ไม่เชื่อมกัน หรือเมื่อต้องการส่งหลายคีย์พร้อมกัน

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่