ฟังก์ชัน FILTER

ฟังก์ชัน FILTER ให้คุณได้กรองช่วงข้อมูลโดยอิงตามเกณฑ์ที่คุณกำหนด

ในตัวอย่างต่อไปนี้ เราใช้สูตร =FILTER(A5:D20,C5:C20=H2,"") เพื่อส่งกลับระเบียนทั้งหมดสําหรับ Apple ตามที่เลือกในเซลล์ H2 และถ้าไม่มีแอปเปิล ให้ส่งกลับสตริงว่าง ("")

ฟังก์ชัน FILTER - กรองภูมิภาคตามผลิตภัณฑ์ (แอปเปิล)

ไวยากรณ์

ฟังก์ชัน FILTER กรองอาร์เรย์โดยอิงจากอาร์เรย์บูลีน (จริง/เท็จ)

=FILTER(array,include,[if_empty])

อาร์กิวเมนต์ คำอธิบาย
array
จำเป็น
อาร์เรย์หรือช่วงที่จะกรอง
รวม
จำเป็น
อาร์เรย์บูลีนที่มีความสูงหรือความกว้างขนาดเดียวกันกับอาร์เรย์ดังกล่าว
[if_empty]
ไม่จำเป็น
ค่าที่จะส่งกลับถ้าค่าทั้งหมดในอาร์เรย์ที่รวมนั้นว่างเปล่า (ตัวกรองไม่ส่งกลับค่าอะไรเลย)

หมายเหตุ

  • อาร์เรย์อาจเป็นแถวของค่า คอลัมน์ของค่า หรือการผสมผสานระหว่างแถวและคอลัมน์ของค่า ในตัวอย่างด้านบน อาร์เรย์แหล่งข้อมูลสําหรับสูตร FILTER คือช่วง A5:D20
  • ฟังก์ชัน FILTER จะส่งกลับอาร์เรย์ ซึ่งจะสปิลล์ถ้าเป็นผลลัพธ์สุดท้ายของสูตร ซึ่งหมายความว่า Excel จะสร้างช่วงอาร์เรย์ที่มีขนาดเหมาะสมแบบไดนามิก เมื่อคุณกด ENTER ถ้าข้อมูลสนับสนุนของคุณอยู่ในตาราง Excel อาร์เรย์จะปรับขนาดโดยอัตโนมัติเมื่อคุณเพิ่มหรือนําข้อมูลออกจากช่วงอาร์เรย์ถ้าคุณกําลังใช้การอ้างอิงที่มีแบบแผน สําหรับรายละเอียดเพิ่มเติม ให้ดูบทความนี้เกี่ยวกับลักษณะการทํางานของอาร์เรย์ที่กระจายตัว
  • ถ้าชุดข้อมูลของคุณมีโอกาสที่จะส่งกลับค่าว่าง ให้ใช้อาร์กิวเมนต์ที่ 3 ([if_empty]) มิฉะนั้น ข้อผิดพลาด #CALC! จะส่งผลให้ Excel ไม่สนับสนุนอาร์เรย์ที่ว่างเปล่าในขณะนี้
  • ถ้าค่าใดๆ ของอาร์กิวเมนต์ include เป็นข้อผิดพลาด (#N/A, #VALUE ฯลฯ) หรือไม่สามารถแปลงเป็นบูลีนได้ ฟังก์ชัน FILTER จะส่งกลับข้อผิดพลาด  
  • Excel จำกัดการสนับสนุนอาร์เรย์แบบไดนามิกระหว่างเวิร์กบุ๊ก และสถานการณ์สมมตินี้จะได้รับการสนับสนุนเมื่อเวิร์กบุ๊กทั้งสองเปิดอยู่ ถ้าคุณปิดเวิร์กบุ๊กต้นฉบับ สูตรอาร์เรย์แบบไดนามิกที่ลิงก์ใดๆ จะส่งกลับ #REF! เป็นข้อผิดพลาด เมื่อมีการรีเฟรช

ตัวอย่าง

FILTER ที่ใช้เพื่อส่งกลับหลายๆ เกณฑ์

ในกรณีนี้ เรากําลังใช้ตัวดําเนินการคูณ (*) เพื่อส่งกลับค่าทั้งหมดในช่วงอาร์เรย์ของเรา (A5:D20) ที่มีแอปเปิลและอยู่ในภูมิภาคตะวันออก: =FILTER(A5:D20,(C5:C20=H1)*(A5:A20=H2),")

ใช้ FILTER พร้อมตัวดำเนินการคูณ (*) เพื่อส่งกลับค่าทั้งหมดในช่วงอาร์เรย์ของเรา (A5:D20) ที่มีแอปเปิลและอยู่ในภูมิภาคตะวันออก

FILTER ที่ใช้เพื่อส่งกลับหลายๆ เกณฑ์แล้วจัดเรียง

ในกรณีนี้ เรากําลังใช้ฟังก์ชัน FILTER ก่อนหน้ากับฟังก์ชัน SORT เพื่อส่งกลับค่าทั้งหมดในช่วงอาร์เรย์ของเรา (A5:D20) ที่มีแอปเปิล และ อยู่ในภูมิภาคตะวันออก แล้วเรียงลําดับหน่วยจากมากไปหาน้อย: =SORT(FILTER(A5:D20,(C5:C20=H1)*(A5:A20=H2),""),4,-1)

ใช้ FILTER พร้อมฟังก์ชัน SORT เพื่อส่งกลับค่าทั้งหมดในช่วงอาร์เรย์ของเรา (A5:D20) ที่มีแอปเปิลและอยู่ในภูมิภาคตะวันออก จากนั้นจึงจัดเรียงหน่วยจากมากไปหาน้อย

ในกรณีนี้ เรากําลังใช้ฟังก์ชัน FILTER กับตัวดําเนินการบวก (+) เพื่อส่งกลับค่าทั้งหมดในช่วงอาร์เรย์ของเรา (A5:D20) ที่มีแอปเปิลหรืออยู่ในภูมิภาคตะวันออก แล้วเรียงลําดับหน่วยจากมากไปหาน้อย: =SORT(FILTER(A5:D20,(C5:C20=H1)+(A5:A20=H2),""),4,-1)

ใช้ FILTER กับ SORT ร่วมกัน กรองตามผลิตภัณฑ์ (แอปเปิล) หรือตามภูมิภาค (ตะวันออก)

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

ต้องการความช่วยเหลือเพิ่มเติมไหม

คุณสามารถสอบถามผู้เชี่ยวชาญใน ชุมชนด้านเทคนิคของ Excel หรือรับการสนับสนุนใน ชุมชนได้เสมอ