ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้

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

เบราว์เซอร์ของคุณไม่สนับสนุนวิดีโอ ติดตั้ง Microsoft Silverlight, Adobe Flash Player หรือ Internet Explorer 9

หมายเหตุ: ขณะนี้ฟังก์ชันนี้พร้อมใช้งานเฉพาะMicrosoft 365ผู้สมัครใช้งานเท่านั้น

ในตัวอย่างต่อไปนี้ เราใช้สูตร =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อาร์เรย์จะปรับขนาดโดยอัตโนมัติเมื่อคุณเพิ่มหรือเอาข้อมูลออกจากช่วงอาร์เรย์ถ้าคุณใช้การอ้างอิงที่มีแบบโครงสร้าง For more details, see this article on spilled array behavior.

  • ถ้าชุดข้อมูลของคุณมีโอกาสส่งกลับค่าว่าง ให้ใช้อาร์กิวเมนต์ที่ 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 หรือ ขอความช่วยเหลือใน Answers Community

ดูเพิ่มเติม

ฟังก์ชัน RANDARRAY

ฟังก์ชัน SEQUENCE

ฟังก์ชัน SORT

ฟังก์ชัน SORTBY

ฟังก์ชัน UNIQUE

ข้อผิดพลาด #SPILL! ใน Excel

ลักษณะการทำงานของอาร์เรย์แบบไดนามิกและอาร์เรย์ที่กระจายตัว

ตัวคูณจุดตัดโดยนัย: @

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

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Microsoft Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพการแปลเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ

ขอบคุณสำหรับคำติชมของคุณ

×