การจับคู่ดัชนี: ทางเลือกที่ดีกว่าสำหรับ Vlookup

เผยแพร่แล้ว: 2021-10-23

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

VLOOKUP ยังแสดงหลายคอลัมน์เมื่อในความเป็นจริงคุณใช้เพียงสองคอลัมน์เท่านั้น ไวยากรณ์มาตรฐานอ้างอิงเฉพาะค่าคอลัมน์สัมพัทธ์เท่านั้น หากคุณแก้ไขตาราง แสดงว่าคุณโชคไม่ดีอีกครั้ง และจำเป็นต้องจัดระเบียบใหม่และเขียนฟังก์ชันใหม่เล็กน้อย ซึ่งอาจเป็นเรื่องที่น่าเบื่อมากในเวิร์กบุ๊กขนาดใหญ่ นอกจากนี้ยังสร้างปัญหาในการคัดลอกฟังก์ชันไปยังคอลัมน์อื่น

มีทางเลือกอื่นคือ INDEX + MATCH ไม่เพียงแต่จำลองการทำงานเท่านั้น แต่ยังมีประโยชน์และโบนัสในตัวเองอีกด้วย สิ่งที่คุณอาจไม่เคยได้ยินมาก่อน (โดยเฉพาะถ้าคุณไม่อ่าน Excel เพื่อความสนุก) แต่ในตอนท้ายของบทความนี้ คุณจะสามารถนำไปปฏิบัติและเก็บเกี่ยวผลตอบแทนได้

แยกย่อย INDEX + MATCH

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

ดัชนี

=INDEX(อาร์เรย์ หมายเลขแถว)

ฟังก์ชัน INDEX นำอาร์เรย์ผู้ใช้ ชุดของค่าต่างๆ เช่น คอลัมน์ และส่งคืนค่าของเซลล์ที่ตำแหน่งนั้น ตัวอย่างเช่น ฉันมีคอลัมน์ข้อมูลที่บันทึกตำแหน่งจากการแข่งขันที่จัดขึ้นในบางจุดในอดีต ฉันต้องการทราบว่าไดรเวอร์ใดเข้าเส้นชัยเป็นอันดับสาม เพื่อหาสิ่งนี้ ฉันสามารถเข้าไปได้

=ดัชนี(B2:B6, 3)

ตัวอย่างข้อมูล excel

และสิ่งนี้จะคืน Rusty Shackleford

เรียบง่ายแต่มีประโยชน์ ขณะนี้เรามีความสามารถในการส่งกลับค่าภายในอาร์เรย์

จับคู่

=MATCH(ค่าการค้นหา, อาร์เรย์การค้นหา, ประเภทการจับคู่)

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

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

=MATCH("คิลกอร์เทราต์", B2:B6, 0)

ตัวอย่างข้อมูล excel

ค่านี้จะคืนค่าเป็น 4 เนื่องจากเราเริ่มต้นจากตำแหน่งสูงสุด เราจึงรู้ว่าปลาเทราท์จบอันดับที่สี่ในการแข่งขันครั้งนี้

ดัชนี MATCH

บางทีคุณอาจเห็นว่าเรากำลังมุ่งหน้าไปในตอนนี้หรือบางทีคุณอาจข้ามไปข้างหน้าเพื่อไปยังสิ่งที่ดี เมื่อใช้ INDEX + MATCH เราสามารถรวมฟังก์ชันง่ายๆ ทั้งสองนี้เข้าด้วยกันเพื่อสร้างสิ่งที่คล้ายคลึงกัน แต่มีความยืดหยุ่นมากกว่า VLOOKUP ที่เชื่อถือได้ของเรา อย่ากังวลหากคุณจำเป็นต้องอ่านเรื่องนี้สักสองสามครั้ง มันอาจจะยุ่งยากเล็กน้อยในตอนแรก เมื่อคุณเข้าใจแล้วว่าเกิดอะไรขึ้นแม้ว่าจะสร้างมันขึ้นมาใหม่จากส่วนประกอบได้ง่ายมาก

INDEX ส่งกลับค่าเฉพาะ นี่คือฟังก์ชันหลักของ VLOOKUP โดยกำหนดชุดพารามิเตอร์ คุณสามารถค้นหาค่าที่ต้องการได้อย่างรวดเร็ว ตอนนี้สิ่งเดียวที่เราขาดหายไปคือวิธีการหาตำแหน่งแถว หากคุณต้องค้นหาสิ่งนี้ด้วยตนเอง คุณจะสูญเสียยูทิลิตี้ของฟังก์ชัน โดยใช้ MATCH ในอาร์กิวเมนต์ที่สอง เราสามารถนำเอาท์พุต ตำแหน่งสัมพัทธ์ และผลักสิ่งนั้นเข้าไปในฟังก์ชันดัชนี เพื่อแก้ปัญหานั้น ตอนนี้ เรามีบางอย่างที่ทำในสิ่งเดียวกันกับ VLOOKUP โดยพิมพ์เพิ่มอีกเพียงเล็กน้อย

การนำฟังก์ชันไปปฏิบัติ

เมื่อใช้ตารางด้านล่าง เราสนใจที่จะค้นหาว่าผลิตภัณฑ์ประเภทใดที่เกี่ยวข้องกับรหัสผลิตภัณฑ์เฉพาะ

ตัวอย่างข้อมูล excel 2

ในการใช้ INDEX MATCH เราเริ่มต้นด้วย INDEX เนื่องจากเราต้องการให้ค่าที่เจาะจงส่งคืนมากกว่าตำแหน่ง ภายใน INDEX เรารวม MATCH เพื่อส่งคืนตำแหน่งสำหรับฟังก์ชัน INDEX ของเรา

=INDEX(A2:A6,MATCH(8316,B2:B6,0))

สิ่งที่เกิดขึ้นที่นี่คือฉันจะค้นหาคอลัมน์ A เพื่อหาค่าของแถวในคอลัมน์ B ที่จัดเตรียมโดยฟังก์ชันการจับคู่

ภายในฟังก์ชันจับคู่ระบุให้ต้องดูรหัสผลิตภัณฑ์ใน B2:B6 แล้วส่งค่ากลับมาเป็นค่า 8316 ในกรณีนี้ อยู่ในตำแหน่งที่ 4 เท่ากับเขียน

=ดัชนี(A2:A6, 4)

Excel เรียกใช้ฟังก์ชันและค้นหาตำแหน่งในอาร์เรย์ของหมายเลข ID ที่ระบุ ใช้ตำแหน่งนั้นและค้นหาแถวเดียวกันในคอลัมน์ A ของเรา โดยส่งคืนประเภทรถบรรทุกสำหรับ ID เฉพาะ ในที่สุด เราก็ได้ผลลัพธ์แบบเดียวกันโดยมีความยืดหยุ่นมากขึ้นเล็กน้อยในอินพุต

ประโยชน์ของฟังก์ชัน

พลังของ INDEX + MATCH มาจากการเลือกข้อมูลที่มีขนาดเล็กลง หากคุณมี 15 คอลัมน์แต่ใช้เพียงตัวเลข 1 และ 15 จะดึงส่วนอื่นเข้าไปทำไม ซึ่งจะช่วยเร่งเวลาการทำงานของชุดข้อมูลขนาดใหญ่ได้

ฟังก์ชันที่ปรับปรุงที่สองซึ่งดัชนีนั้นสามารถอ่านทางซ้ายหรือขวา ไม่ว่าคุณจะวางคอลัมน์ไว้ที่ใด INDEX จะไม่แยแสว่าจะอยู่ทางซ้ายหรือขวาของอาร์เรย์เริ่มต้นของคุณ ซึ่งแตกต่างจาก VLOOKUP หากคุณดูตัวอย่างด้านบนอีกครั้ง นั่นคือสิ่งที่เราทำ โดยเริ่มจากขวาไปซ้าย ฟังก์ชันนี้ยังสามารถใช้เป็นการตรวจสอบการประกันคุณภาพได้ เนื่องจากคุณต้องระบุสองคอลัมน์ที่คุณต้องการด้วยตนเอง แทนที่จะป้อนหมายเลขคอลัมน์สัมพัทธ์ที่ใดที่หนึ่งภายในการเลือกของคุณ

ต้องการภาพเพิ่มเติมหรือไม่? ชมการบันทึกหน้าจอของตัวอย่างการจับคู่ดัชนีที่เราแทรก URL สุดท้ายลงในเทมเพลตข้อความโฆษณา

บทสรุป

ไปข้างหน้าและเล่นกับ INDEX + MATCH เป็นฟังก์ชันที่ทรงพลังมากที่สามารถเพิ่มความสามารถในการค้นหาของคุณได้ เมื่อคลิกแล้ว ฉันแน่ใจว่าคุณจะถูกขายและไม่มีวันหันหลังกลับ มีช่วงการเรียนรู้อยู่เสมอเมื่อลองทำสิ่งใหม่ ๆ มุ่งมั่นที่จะใช้ Index Match ชั่วขณะหนึ่ง แรกๆ อาจจะดูรกๆ แต่คุณจะเห็นประโยชน์ในไม่ช้านี้

———-
โพสต์อัปเดตโดย Jenna Kelly (วันที่โพสต์ก่อนหน้า: 2/3/14)