ฟังก์ชัน dynamic array ใน Excel

หนึ่งในคำถามที่ผมพบอยู่บ่อย ๆ สำหรับคนใช้ Excel คือ

อยากให้ VLOOKUP ได้ผลลัพธ์หลายค่า จากคำค้นหาคำเดียว ทำยังไง?

ซึ่งคำถามนี้ก็รวมไปถึง XLOOKUP ซึ่งเป็นฟังก็ชันน้องใหม่ที่แนะนำให้ใช้แทน VLOOKUP สำหรับผู้ใช้ Excel รุ่นใหม่ๆ ด้วย

เพราะหลาย ๆ คนอยากให้ VLOOKUP หรือ XLOOKUP แล้วได้ข้อมูลที่ตรงกับเงื่อนไข (match) ออกมาทั้งหมด หรือได้ทุกค่าที่ตรง

คำตอบง่ายสุดคือ ไม่ได้ เพราะ 2 ฟังก์ชันนี้ไม่ได้ออกแบบมาเพื่องานนี้

แต่ก็ไม่ใช่ว่ามันจะทำไม่ได้ซะทีเดียว แต่มันต้องใช้สูตรที่ค่อนข้างจะมีซับซ้อนน่ะ และเราจะไม่อธิบายในที่นี้ 😂 แต่แนะนำให้ไปอ่านในวิธีการใช้งานฟังก์ชัน FILTER แทน เพราะนี่คือ คำตอบจริง ๆ ที่คุณค้นหาอยู่ เพียงแค่บังเอิญว่ามันมีใช้แค่ใน Excel 365

วันนี้เราจะมาพูดถึงฟังก์ชันประเภท dynamic array ใน Excel กัน และ FILTER() ก็เป็นหนึ่งในฟังก์ชันประเภทนี้

ภาพรวม

หากจะถามว่า “ฟังก์ชัน dynamic array คืออะไร? ” คำตอบง่าย ๆ คือ

ฟังก์ชันที่ให้ค่ากลับคืนมาได้มากกว่า 1 ค่า หรือที่เรียกเป็นภาษาอังกฤษว่า array ซึ่งมันคือ รายการข้อมูลชุดหนึ่งนั่นเอง

โดยฟังก์ชันกลุ่มนี้เริ่มมีให้ใช้ราว ๆ ปี 2020 ในกลุ่มผู้ใช้งาน Excel ในชุดแอป Microsoft 365

ซึ่งแตกต่างจากฟังก์ชันเดิม ๆ ในเอกซ์เซลที่จะคืนค่าหรือให้ผลลัพธ์กลับมาให้เรา “เพียงค่าเดียว” เท่านั้น

โดยโพสต์ก่อนหน้านี้ ผมค่อนข้างจะพูดถึงฟังก์ชันกลุ่มนี้บ่อย เลยคิดว่า จะจับกลุ่มรวมไว้ในโพสต์นี้เลย

โดย dynamic array ถือว่าเป็นจุดเปลี่ยนของการใช้งาน Excel ไปอีกขั้นหนึ่ง เพราะตั้งแต่ก่อน เราไม่แทบจะไม่สามารถกรอง (filter) เอาข้อมูลได้ง่าย ๆ เลย ยกเว้นจะใช้วิธีแบบทำเอง (manual) หรือไม่ก็ใช้โค้ด VBA

ส่วนตัวอย่างการใช้งานของแต่ละฟังก์ชัน จะเขียนเพิ่มให้ครบในโพสต์ต่อ ๆ ไปครับ

รายชื่อ

ฟังก์ชันเริ่มมีใช้งานคำอธิบาย
FILTER2020ใช้สำหรับกรองเอาเฉพาะข้อมูลจากชุดข้อมูลที่ตรงตามเงื่อนไขที่เรากำหนด
SORT2020ใช้สำหรับจัดเรียงข้อมูลในรูปแบบที่ต้องการ ไม่ว่าจะเป็นเรียงจากน้อยไปมากหรือมากไปน้อย
SORTBY2020จัดเรียงข้อมูล โดยอ้างอิงจากอีกคอลัมน์หนึ่ง
SEQUENCE2020ใช้สร้างลำดับตัวเลขที่ต่อเนื่องกันในตาราง
UNIQUE2020ใช้เพื่อดึงค่าที่ไม่ซ้ำกันจากช่วงข้อมูลที่กำหนด
RANDARRAY2020สร้างอาร์เรย์ตัวเลขสุ่มภายในขอบเขตที่เรากำหนดให้
XLOOKUP2020ใช้สำหรับค้นหาข้อมูลในตารางหรือช่วงข้อมูล โดยสามารถค้นหาได้ทั้งจากด้านบน-ลงล่างและล่าง-ขึ้นบน (⚠️ปกติจะไม่ให้ให้ dynamic array กลับมา แต่ทำได้บางกรณี)

หวังว่าบทความนี้จะช่วยให้เข้าใจ dynamic array ได้มากขึ้นนะครับ 😊 ถึงแม้จะสั้นหน่อย แต่อยากให้เขียนเกี่ยวกับอะไรเพิ่มเติม ให้ comment ไว้ได้เลย 💗


Posted

in

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.