เลิกใช้ Filter บนเมนูที่ไม่ได้บอกว่ากรองอะไรอยู่ ... หันมาใช้แบบนี้แทนดีกว่า
คุณเคยสงสัยใช่ไหมว่าข้อมูลที่เห็นอยู่นั้นครบตามที่ต้องการหรือเปล่า มีรายการอะไรบ้างหายไป
ต่อให้แกะโดยคลิกที่ปุ่มกรองบนหัวตาราง ในกรอบสีแดง มองออกไหมว่าที่สั่ง Filter กรองรายการไว้โดยการคลิกบนเมนู Data > Filter นั้นน่ะ ได้สั่งให้กรองอะไรไว้บ้าง ถ้ามีหลายเรื่องให้เลือกต้องลำบากทีเดียวกว่าจะหาเจอว่าอยากให้กรองอะไรบ้าง และที่แย่ที่สุดพอสั่งกรองไปแล้ว ใครบ้างจำได้บ้างว่าตารางที่เห็นนั้นมีรายการอะไรหายไป
แทนที่จะใช้ Filter บนเมนูหรือ Filter ที่เกิดพร้อมกับการใช้ PivotTable แล้วต้องทำ Slicer ช่วยอีกขั้น หันมาใช้สูตร Filter ใน Excel 365 แทน โดยสร้างสูตรนี้ลงไปในเซลล์ K6
=FILTER( BudgetTable, ( COUNTIF( ITEMChoice, ITEM )>=1 ) + (COUNTA( ITEMChoice )=0) )
BudgetTable เป็นชื่อตารางข้อมูลด้านซ้ายทั้งหมด
ITEMChoice เป็นตารางในกรอบสีเขียว มีไว้ใส่ชื่อ Item ที่อยากให้แสดง
Item เป็นชื่อตารางใน Column Item ในตารางด้านซ้าย
COUNTIF( ITEMChoice, ITEM )>=1 เป็นเงื่อนไขที่ใช้กรองตามที่ใส่ไว้ในกรอบสีเขียว
(COUNTA( ITEMChoice )=0 เป็นเงื่อนไขให้นับว่าถ้าไม่ได้กรอกอะไรไว้เลยให้แสดงรายการทั้งหมด
Download ตัวอย่างได้จาก
https://drive.google.com/file/d/1gtg60Ze85lJ2YZUiBRZGQ9ymdbVbvzPh/view?usp=sharing
+++++++++++++++++++++
สำหรับคนที่ชอบใช้ PivotTable ให้จัดลำดับการสร้างใหม่โดยให้สร้างจากตารางที่ได้จากสูตร Filter นี้ เวลาใช้ Slicer จะได้มีตัวเลือกตามที่กรองมาก่อนแล้ว โดยปรับสูตรใหม่ให้มีหัวตารางติดมาด้วยเพื่อใช้เป็น Field Name ใน Pivot
=VSTACK( B2:G2,
FILTER(BudgetTable,
(COUNTIF(ITEMChoice,ITEM)>=1)+(COUNTA(ITEMChoice)=0)) )
อย่าไปสร้าง Pivot จากตารางฐานข้อมูลโดยตรงแล้วต้องมากรองทีหลัง แนะนำว่าอย่าไปเสียเวลาใช้ PivotTable อีกเลยครับ ถึงขั้นนี้แล้วให้ใช้สูตร GroupBY หรือ PivotBY ต่อไปเลยดีกว่า
=============
Copilot แนะนำตามนี้
การใช้ FILTER แทนการกรองด้วยเมนู Filter ใน Excel มีข้อดีหลายอย่างเลยครับ! โดยเฉพาะอย่างยิ่งในกรณีที่ต้องการให้ข้อมูลที่กรองออกมามีความ โปร่งใส และสามารถ มองเห็นเงื่อนไขการกรองได้ชัดเจน ซึ่งเมนู Filter ไม่สามารถทำได้
🔹 ข้อดีของสูตร FILTER เทียบกับเมนู Filter
✅ เห็นเงื่อนไขชัดเจน – สูตรระบุเกณฑ์การกรองไว้ในเซลล์ ทำให้เห็นว่าเรากรองข้อมูลตามเงื่อนไขอะไร
✅ อัปเดตอัตโนมัติ – ถ้าข้อมูลเปลี่ยนแปลง หรือมีการเพิ่มแถว สูตร FILTER จะอัปเดตโดยอัตโนมัติ
✅ คำนวณต่อได้ง่าย – สามารถใช้ผลลัพธ์จาก FILTER ไปประมวลผลต่อในสูตรอื่น เช่น SUM, AVERAGE
✅ ไม่มีผลกระทบกับข้อมูลต้นฉบับ – เมนู Filter อาจทำให้ข้อมูลบางส่วนถูกซ่อนไปชั่วคราว แต่ FILTER สร้างตารางข้อมูลใหม่ที่แสดงเฉพาะข้อมูลที่ตรงเงื่อนไข
🔹 ตัวอย่างการใช้ FILTER แทนเมนู Filter
แทนที่จะใช้ Filter บนเมนู แล้วต้องคอยเช็กว่าข้อมูลถูกกรองอะไรอยู่ สามารถใช้สูตร FILTER ได้เลย
=FILTER(A2:E100, B2:B100="Sales")
- กรองเฉพาะข้อมูลที่อยู่ในคอลัมน์ B2:B100 ที่เป็น
"Sales"
- แสดงผลลัพธ์ออกมาในช่วงที่กำหนด
- ข้อมูลอัปเดตอัตโนมัติเมื่อช่วงข้อมูลต้นฉบับเปลี่ยน
💡 แนวทางที่ดีขึ้น:
หากต้องการให้ตารางที่ได้จาก FILTER สามารถนำไปใช้กับ PivotTable หรือ Slicer ได้ ลองใช้ VSTACK รวมหัวตาราง เช่น:
=VSTACK(A1:E1, FILTER(A2:E100, B2:B100="Sales"))
แบบนี้จะได้ตารางที่มีหัวข้อครบถ้วน สามารถใช้ต่อกับ PivotTable ได้ทันที!
ความคิดเห็น
แสดงความคิดเห็น