สรุปข้อมูลด้วย GROUPBY + HSTACK 😎💚 #excelsoezy #exceltips #exceltricks #howto #office
ถ้าคุณต้อง “สรุปยอดขายรายเดือน” ใน Excel แล้วอยากได้ตารางสรุปแบบแยกตาม “จังหวัด + ชนิดสินค้า” (หรือมิติอื่น ๆ) โดยไม่ต้องสร้าง PivotTable ฉันชอบใช้คู่หู GROUPBY + HSTACK เพราะทำให้จัดรูปข้อมูลและรวมยอดได้ในสูตรเดียว แก้ข้อมูลต้นทางแล้วผลลัพธ์อัปเดตทันที 1) เตรียมคอลัมน์ที่ต้องใช้ ตัวอย่างข้อมูลที่ฉันเจอบ่อยจะมีคอลัมน์ประมาณนี้ - วันที่ขาย (Date) - จังหวัด - ชนิดสินค้า - ยอดขาย ทริคสำคัญสำหรับ “รายเดือน” คือสร้างคอลัมน์เดือนให้ชัดก่อน เพื่อให้ GROUPBY จับกลุ่มได้ตรง เช่นทำคอลัมน์ “เดือน” เป็นวันที่วันแรกของเดือน - ถ้า A2 คือวันที่ขาย ใช้สูตร: =DATE(YEAR(A2),MONTH(A2),1) แล้วตั้งรูปแบบเป็น yyyy-mm หรือ mmm-yy ตามที่ชอบ 2) ใช้ HSTACK เพื่อเอามิติมาวางติดกัน สิ่งที่ HSTACK ทำให้สะดวกคือ “ประกบคอลัมน์” ให้เป็นชุดคีย์เดียวกัน เช่น - เดือน + จังหวัด + ชนิดสินค้า - หรือ จังหวัด + ชนิดสินค้า (ตามตัวอย่างในภาพ) แนวคิดคือทำตารางคีย์ให้พร้อมก่อน เช่น (สมมติ) - เดือนอยู่คอลัมน์ B (B7:B18) - จังหวัดอยู่คอลัมน์ D (D7:D18) - ชนิดสินค้าอยู่คอลัมน์ F (F7:F18) จะประกบเป็นคีย์ 3 มิติได้แบบนี้: =HSTACK(B7:B18, D7:D18, F7:F18) 3) สรุปยอดด้วย GROUPBY จากนั้นค่อยสั่ง GROUPBY ให้รวมยอดขาย (เช่นยอดขายอยู่ G7:G18) โดยรวมแบบ SUM ตัวอย่างแนวทาง: =GROUPBY(HSTACK(B7:B18, D7:D18, F7:F18), G7:G18, SUM) ผลลัพธ์ที่ได้จะเป็นตารางสรุปที่เรียงเป็นกลุ่มตามคีย์ (เดือน/จังหวัด/ชนิดสินค้า) พร้อมยอดขายรวม ซึ่งเหมาะมากสำหรับทำรายงาน “สรุปยอดขายรายเดือน” และนำไปต่อกราฟ/แดชบอร์ดได้ทันที 4) เคล็ดลับที่ช่วยให้ใช้งานได้ลื่นขึ้น - ตรวจสอบข้อมูล “วันที่” ให้เป็น Date จริง ไม่ใช่ข้อความ ไม่งั้นคอลัมน์เดือนจะเพี้ยน - ถ้ามีช่องว่างหรือสะกดชื่อจังหวัดไม่เหมือนกัน (เช่น เชียงใหม่/เชียงไหม) ให้ทำความสะอาดข้อมูลก่อน ไม่งั้นจะถูกแยกเป็นคนละกลุ่ม - ถ้าต้องการให้รายงานอ่านง่าย ฉันมักใส่หัวคอลัมน์เอง เช่น เดือน | จังหวัด | ชนิดสินค้า | ยอดขายรวม แล้วค่อยวางผลลัพธ์ GROUPBY ใต้หัวตาราง สรุปคือ ถ้าโจทย์คุณคือ groupby excel เพื่อสรุปยอดขายรายเดือน การทำ “คอลัมน์เดือน” ก่อน แล้วใช้ HSTACK จัดคีย์ + GROUPBY รวมยอด จะเร็วและยืดหยุ่นมาก โดยเฉพาะเวลาต้องสรุปหลายมิติอย่าง “ตามจังหวัดและชนิดสินค้า” ในไฟล์เดียว







