หน้าแรก บทความ Microsoft
Microsoft

สูตร FILTER ใน Excel กรองข้อมูลอัตโนมัติแบบ Dynamic Array

เผยแพร่ 13 ส.ค. 69

เคยต้องกดปุ่มกรอง (AutoFilter) ทุกครั้งที่อยากดูข้อมูลเฉพาะบางส่วนไหมครับ แล้วพอปิด-เปิดไฟล์ใหม่หรือมีคนมาแก้ตัวกรองทับ ข้อมูลที่กรองไว้ก็หายไปต้องมานั่งกรองใหม่ทุกที ปัญหานี้แก้ได้ด้วยสูตร FILTER ที่ดึงเฉพาะแถวที่ตรงเงื่อนไขออกมาเป็นชุดข้อมูลใหม่โดยอัตโนมัติ อัปเดตเองทันทีที่ต้นฉบับเปลี่ยน บทความนี้จะพาไปดู syntax พร้อมตัวอย่างจำลองให้เห็นภาพจริง

FILTER คืออะไร ใช้งานยังไง

FILTER เป็นสูตรกลุ่ม Dynamic Array ที่มีเฉพาะใน Excel 365 และ Excel 2021 ขึ้นไป ทำหน้าที่ดึงเฉพาะแถวที่ตรงเงื่อนไขที่กำหนดออกมาแสดงเป็นชุดใหม่ ไม่ต้องลากสูตรหรือกดปุ่มกรองเอง รูปแบบสูตรคือ

=FILTER(array, include, [if_empty])

D2fx=FILTER(A2:C7,B2:B7="ส.ค.","ไม่มีรายการ")
A B C
1 รายการ เดือน จำนวนเงิน
2 ค่าไฟ ส.ค. 1,200
3 ค่าเน็ต ก.ค. 590
4 ซื้อของใช้ ส.ค. 850
5 ค่าน้ำ ก.ค. 320
6 ค่าเทอมลูก ส.ค. 4,500
7 ประกันรถ มิ.ย. 2,100

ในช่อง D2 พิมพ์สูตรครั้งเดียว ผลลัพธ์จะ “ล้น” (spill) ลงมาแสดงเองอัตโนมัติดังตารางถัดไป โดยดึงเฉพาะแถวที่คอลัมน์เดือนเป็น “ส.ค.” ออกมาเรียงต่อกัน โดยไม่ต้องคัดลอกสูตรทีละแถว

D2fxผลลัพธ์ที่ล้นออกมา (spill)
D E F
1 รายการ เดือน จำนวนเงิน
2 ค่าไฟ ส.ค. 1,200
3 ซื้อของใช้ ส.ค. 850
4 ค่าเทอมลูก ส.ค. 4,500

สังเกตว่าได้เฉพาะ 3 แถวที่ตรงเงื่อนไขเท่านั้น และถ้าไปเพิ่มรายการใหม่ในเดือน ส.ค. ที่ตารางต้นฉบับ ผลลัพธ์ตรงนี้จะขยายเพิ่มแถวให้เองทันทีโดยไม่ต้องแก้สูตรใหม่

FILTER ต่างจากปุ่ม AutoFilter ยังไง

หลายคนคุ้นกับการกดปุ่มกรอง (ไอคอนรูปกรวย) บนหัวตารางอยู่แล้ว แต่ FILTER ทำงานต่างออกไปพอสมควร

รูปแบบ ทำงานยังไง
AutoFilter (ปุ่มกรองปกติ) แค่ซ่อนแถวที่ไม่ตรงเงื่อนไขไว้ ข้อมูลเดิมยังอยู่ในตำแหน่งเดิมทั้งหมด ต้องกดล้างตัวกรองถึงจะเห็นข้อมูลครบ
สูตร FILTER ดึงข้อมูลที่ตรงเงื่อนไขมาแสดงเป็นชุดใหม่แยกต่างหาก อัปเดตอัตโนมัติเมื่อต้นฉบับเปลี่ยน และเอาผลลัพธ์ไปใช้ต่อกับสูตรอื่น เช่น SUM หรือ COUNT ได้ทันที

พูดง่ายๆ คือ AutoFilter เหมาะกับการดูข้อมูลชั่วคราวหน้าจอเดียว ส่วน FILTER เหมาะกับการสร้างรายงานหรือสรุปข้อมูลที่ต้องอัปเดตต่อเนื่อง เพราะแยกชุดข้อมูลออกจากต้นฉบับอย่างชัดเจน ไม่กระทบตารางเดิม

ตัวอย่างใช้งานจริง: กรองรายชื่อสมาชิกครอบครัวที่อายุเกิน 18 ปี

อีกสถานการณ์ที่เจอบ่อยในบัญชีครอบครัว เช่น ทำบัญชีสมาชิก Microsoft 365 Family แล้วอยากรู้ว่าใครอายุเกิน 18 ปีบ้าง (เผื่อต้องแยกสิทธิ์การใช้งานหรือแจ้งเตือนเรื่องต่างๆ)

E2fx=FILTER(A2:B6,B2:B6>18,"ยังไม่มีใครอายุเกิน")
A B
1 ชื่อ อายุ
2 พ่อ 45
3 แม่ 42
4 พี่คนโต 20
5 น้องคนกลาง 15
6 น้องเล็ก 9
E2fxผลลัพธ์ที่ล้นออกมา (spill)
E F
1 ชื่อ อายุ
2 พ่อ 45
3 แม่ 42
4 พี่คนโต 20

จากตารางต้นฉบับ 5 คน สูตรดึงมาแสดงเฉพาะ 3 คนที่อายุเกิน 18 ปี เรียงตามลำดับเดิมโดยอัตโนมัติ ถ้าอยากเรียงจากอายุมากไปน้อยด้วย สามารถใช้ร่วมกับสูตร SORT ได้ เช่น =SORT(FILTER(A2:B6,B2:B6>18),2,-1) ซึ่งเป็นแนวทางเดียวกับที่อธิบายไว้ใน สูตร UNIQUE ดึงรายการไม่ซ้ำอัตโนมัติ ที่รวมสูตร Dynamic Array เข้าด้วยกันได้เช่นกัน

ผสมหลายเงื่อนไขด้วย * (AND) และ + (OR)

จุดเด่นอีกอย่างของ FILTER คือใส่เงื่อนไขได้มากกว่า 1 ข้อในสูตรเดียว โดยใช้เครื่องหมาย * แทนความหมาย “และ” (ต้องตรงทุกเงื่อนไข) และเครื่องหมาย + แทนความหมาย “หรือ” (ตรงข้อใดข้อหนึ่งก็ได้)

E2fx=FILTER(A2:C7,(B2:B7="ส.ค.")*(C2:C7>800),"ไม่มีรายการ")
A B C
1 รายการ เดือน จำนวนเงิน
2 ค่าไฟ ส.ค. 1,200
3 ค่าเน็ต ก.ค. 590
4 ซื้อของใช้ ส.ค. 850
5 ค่าน้ำ ก.ค. 320
6 ค่าเทอมลูก ส.ค. 4,500
7 ประกันรถ มิ.ย. 2,100

ตัวอย่างนี้ตั้งเงื่อนไข “ต้องเป็นเดือน ส.ค. และ จำนวนเงินมากกว่า 800″ พร้อมกัน ผลลัพธ์ที่ล้นออกมาจะเหลือแค่รายการที่ผ่านทั้งสองเงื่อนไข

E2fxผลลัพธ์ที่ล้นออกมา (spill)
E F G
1 รายการ เดือน จำนวนเงิน
2 ค่าไฟ ส.ค. 1,200
3 ค่าเทอมลูก ส.ค. 4,500

ถ้าอยากเปลี่ยนเป็นแบบ “หรือ” เช่น เอารายการที่เป็นเดือน ส.ค. หรือ จำนวนเงินมากกว่า 2,000 ก็แค่เปลี่ยนเครื่องหมาย * เป็น + ในสูตรเดียวกัน: =FILTER(A2:C7,(B2:B7="ส.ค.")+(C2:C7>2000),"ไม่มีรายการ")

ข้อควรระวังเวลาใช้ FILTER

สรุป

FILTER คือสูตรที่ช่วยดึงข้อมูลตามเงื่อนไขออกมาเป็นชุดใหม่แบบอัตโนมัติ ต่างจาก AutoFilter ตรงที่ไม่แก้ไขตารางต้นฉบับ อัปเดตผลลัพธ์เองทุกครั้งที่ข้อมูลเปลี่ยน และเอาไปต่อยอดกับสูตรอื่นได้ง่าย เหมาะมากกับงานทำบัญชีรายรับรายจ่ายหรือดูข้อมูลสมาชิกในครอบครัว ใครที่อยากปูพื้นฐานสูตร Excel เพิ่มเติม แนะนำให้อ่านต่อที่ 10 สูตร Excel พื้นฐานที่ต้องรู้ไว้ใช้ทำงานประจำวัน เพื่อใช้งานร่วมกับ FILTER ได้ครบสูตรยิ่งขึ้น

หมายเหตุ: บทความนี้เขียนและเรียบเรียงโดย AI

← กลับหน้าบทความ
Line