VLOOKUP และส่งคืนการจับคู่ทั้งหมดใน Excel (7 วิธี)

  • แบ่งปันสิ่งนี้
Hugh West

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

ดาวน์โหลดสมุดงานแบบฝึกหัด

คุณสามารถดาวน์โหลดสมุดงาน Excel ที่เราใช้ในการเตรียมบทความนี้

VLOOKUP และ Return All Matches.xlsx

7 วิธี VLOOKUP และส่งคืนค่าที่ตรงกันทั้งหมดใน Excel

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

1. VLOOKUP และส่งคืนรายการที่ตรงกันหลายรายการในคอลัมน์

ในภาพต่อไปนี้ เรามีตารางที่มีชื่อพนักงานและแผนกต่างๆ แบบสุ่ม สมมติว่าเราต้องการแสดงชื่อพนักงานในคอลัมน์เดียวที่ทำงานในแผนกการผลิต

หากคุณเป็น Excel 365 ผู้ใช้ จากนั้นคุณสามารถใช้ฟังก์ชัน FILTER ที่นี่เพื่อค้นหาค่าที่ส่งคืนในช่วงเวลาหนึ่ง ด้วยฟังก์ชัน กรอง สูตรที่ต้องการในเอาต์พุต เซลล์ C16 จะเป็น:

=FILTER(C5:C13,C15=B5:B13)

หลังจากกด Enter คุณจะเห็นชื่อพนักงานจาก การผลิต แผนกในอาร์เรย์แนวตั้ง

หรือหากคุณใช้ เวอร์ชันเก่ากว่า ของ Microsoft Excel คุณต้องใช้สูตรรวมต่อไปนี้ :

=INDEX($C$5:$C$13, SMALL(IF(($C$15=$B$5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), ""),ROWS($A$1:A1)))

หลังจากกด Enter คุณจะพบชื่อของพนักงานในเอาต์พุต เซลล์ C16 .

โดยใช้ Fill Handle จาก เซลล์ C16 ลงไปด้านล่าง คุณจะได้รับชื่อที่เหลือของ พนักงานจากแผนกที่ระบุพร้อมกัน

🔎 สูตรนี้ทำงานอย่างไร

  • ROW($B$5:$B$13): ฟังก์ชัน ROW แยกหมายเลขแถวของการอ้างอิงเซลล์ที่กำหนดและส่งกลับอาร์เรย์ต่อไปนี้:
<0 {5;6;7;8;9;10;11;12;13}
  • จับคู่(ROW($B$5:$B$13) , ROW($B$5:$B$13)):ฟังก์ชัน MATCH ที่นี่จะแปลงหมายเลขแถวที่แยกออกมาโดยเริ่มจาก 1 ดังนั้น ส่วนนี้ของสูตรจึงส่งคืนอาร์เรย์ของ:

{1;2;3;4;5;6;7;8;9}

  • IF(($C$15=$B $5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), “”): ด้วยความช่วยเหลือของ IF ฟังก์ชัน ส่วนนี้ของสูตรจะส่งกลับหมายเลขดัชนีของแถวที่ตรงตามเงื่อนไขที่ระบุ ดังนั้น ส่วนนี้จะส่งคืนอาร์เรย์ของ:

{“”;2;””;4;””;””;””;””;9}

  • ฟังก์ชัน SMALL ในสูตรจะดึงค่าเล็กแรกออกมาจำนวนที่พบในขั้นตอนที่แล้ว และกำหนดหมายเลขนี้ให้กับอาร์กิวเมนต์ที่สอง (row_number) ของฟังก์ชัน INDEX
  • สุดท้าย INDEX ฟังก์ชันแสดงชื่อของพนักงานตามหมายเลขแถวที่ระบุ
  • ฟังก์ชัน ROWS ในสูตรนี้กำหนดตัวเลข k-th สำหรับ SMALL ฟังก์ชัน ในขณะที่ใช้ Fill Handle เพื่อเติมเซลล์ที่เหลือ สูตรจะใช้ตัวเลข k-th เพื่อแยกข้อมูลตามด้วยฟังก์ชัน SMALL <16

อ่านเพิ่มเติม: INDEX MATCH เทียบกับฟังก์ชัน VLOOKUP (9 ตัวอย่าง)

2. VLOOKUP และส่งคืนรายการที่ตรงกันทั้งหมดในแถวใน Excel

หากคุณต้องการดูชื่อของพนักงานในแนวนอน คุณต้องรวมฟังก์ชัน ตัวกรอง เข้ากับ TRANSPOSE ฟังก์ชัน ฟังก์ชัน TRANSPOSE แปลงช่วงแนวตั้งของเซลล์เป็นช่วงแนวนอนหรือกลับกัน และในการใช้สูตรที่รวมกันนี้ คุณต้องเป็นผู้ใช้ Excel 365

ดังนั้น สูตรที่จำเป็นในเอาต์พุต เซลล์ C16 จะเป็น:

=TRANSPOSE(FILTER(C5:C13,C15=B5:B13))

ตอนนี้กด Enter และคุณจะเห็นชื่อของพนักงานจากแผนกการผลิตในแถวแนวนอน

หรือใส่สูตรต่อไปนี้ในเอาต์พุต เซลล์ C16 หากคุณไม่ใช่ผู้ใช้ Excel 365

=INDEX($C$5:$C$13, SMALL(IF($C$15=$B$5:$B$13, ROW($B$5:$B$13)-MIN(ROW($B$5:$B$13))+1, ""), COLUMNS($A$1:A1))) <2

กด Enter และคุณจะพบชื่อของพนักงานจากที่ระบุแผนก

ตอนนี้ ใช้ Fill Handle แล้วลาก เซลล์ C16 ไปทางขวาจนกว่าคุณจะพบ #NUM แรก ข้อผิดพลาด และคุณจะได้ชื่อทั้งหมดจากแผนก การผลิต ในแนวนอน

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

อ่านเพิ่มเติม: Excel VLOOKUP ถึง คืนค่าหลายค่าในแนวตั้ง

3. VLOOKUP เพื่อส่งคืนค่าหลายค่าตามเกณฑ์

เราได้เพิ่มคอลัมน์พิเศษตรงกลางตาราง คอลัมน์นี้จัดเก็บรหัสโครงการที่กำหนดให้กับพนักงานที่เกี่ยวข้องซึ่งแสดงอยู่ใน คอลัมน์ D ดังนั้น เราจะป้อนเงื่อนไขที่แตกต่างกัน 2 เงื่อนไขในขณะนี้ และแยกข้อมูลตามที่พบทั้งหมด

ตัวอย่างเช่น เราต้องการทราบชื่อของพนักงานที่กำลังทำงานใน การขาย แผนกบนรหัสโครงการของ DMR 103 .

สูตรที่จำเป็นในเอาต์พุต เซลล์ C17 จะเป็น:

=IFERROR(INDEX($D$5:$D$13, SMALL(IF(1=((--($C$15=$B$5:$B$13)) * (--($C$16=$C$5:$C$13))), ROW($D$5:$D$13)-4,""), ROW()-16)),"")

กด Enter แล้วคุณจะพบชื่อของพนักงานภายใต้เกณฑ์ที่กำหนด

ตอนนี้กรอก เซลล์ C17 เพื่อแสดงชื่อที่เหลือตามเงื่อนไขที่กำหนด

🚩 คุณสมบัติที่สำคัญบางประการของสูตรนี้:

  • สูตรนี้ยังค่อนข้างคล้ายกับที่ใช้ใน วิธีการก่อนหน้านี้
  • ในสูตรนี้ มีการใช้ฟังก์ชัน IFERROR เพื่อแสดงผลลัพธ์ที่กำหนดเองหากพบข้อผิดพลาดใดๆ
  • ฟังก์ชัน IF ฟังก์ชันในสูตรนี้รวมเกณฑ์ที่แตกต่างกันสองเกณฑ์ และด้วยความช่วยเหลือของ double-unary ค่าบูลีน (TRUE หรือ FALSE) เปลี่ยนเป็น 1 หรือ 0 จากนั้นฟังก์ชันจะส่งคืนหมายเลขดัชนีของแถวที่ตรงกับเกณฑ์ที่กำหนด
  • ROW($D$5:$D$13)-4: ในส่วนนี้ ตัวเลข '4' คือหมายเลขแถวของส่วนหัว Employee
  • ROW()-16: และค่าตัวเลข '16' ใช้ใน ส่วนนี้แสดงถึงหมายเลขแถวก่อนหน้าของเซลล์เอาต์พุตแรก

อ่านเพิ่มเติม: ใช้ VLOOKUP ที่มีหลายเกณฑ์ใน Excel (6 วิธี + ทางเลือก)

4. VLOOKUP และดึงการแข่งขันทั้งหมดด้วยตัวกรองอัตโนมัติ

การใช้ ตัวกรองอัตโนมัติ ทำให้เราสามารถดึงข้อมูลจากการแข่งขันทั้งหมดได้ง่ายขึ้น เนื่องจากเราจะดึงชื่อพนักงานออกจากแผนกการผลิต เราจึงต้องทำตามขั้นตอนต่อไปนี้:

📌 ขั้นตอนที่ 1:

➤ เลือกตารางข้อมูลทั้งหมดแล้วคลิกขวาที่เมาส์

➤ เลือกตัวเลือก 'กรองตามค่าเซลล์ที่เลือก' จากตัวเลือก กรอง

ดังนั้น คุณเพิ่งเปิดใช้งาน กรอง ปุ่มสำหรับส่วนหัวของคุณ

📌 ขั้นตอนที่ 2:

➤ คลิกที่ปุ่ม ตัวกรอง จากส่วนหัว แผนก

➤ ทำเครื่องหมายบนตัวเลือก การผลิต เท่านั้น

➤ กด ตกลง และเสร็จสิ้น

เช่นเดียวกับในภาพหน้าจอด้านล่าง คุณจะแสดงผลผลลัพธ์และข้อมูลที่กรองแล้ว

อ่านเพิ่มเติม: VLOOKUP ที่มีการจับคู่หลายรายการใน Excel

การอ่านที่คล้ายกัน

  • วิธีใช้ Double VLOOKUP ใน Excel (4 วิธีด่วน)
  • VLOOKUP ไม่ทำงาน (8 เหตุผลและวิธีแก้ไข)
  • วิธีการรวม Excel SUMIF & VLOOKUP ข้ามหลายชีต
  • VLOOKUP เพื่อส่งคืนหลายคอลัมน์ใน Excel (4 ตัวอย่าง)
  • วิธี VLOOKUP ที่มีหลายเงื่อนไขใน Excel (2 วิธี )

5. VLOOKUP เพื่อแยกรายการที่ตรงกันทั้งหมดด้วยตัวกรองขั้นสูงใน Excel

คุณยังสามารถใช้ ตัวกรองขั้นสูง ซึ่งคุณต้องกำหนดเกณฑ์โดยเลือกช่วงเกณฑ์จากสเปรดชีต Excel ของคุณ ในภาพต่อไปนี้ B15:B16 คือช่วงเกณฑ์

📌 ขั้นตอนที่ 1:

➤ เลือก ตารางข้อมูลทั้งหมด

➤ ใต้ริบบิ้น ข้อมูล คลิกคำสั่ง ขั้นสูง จาก เรียงลำดับและกรอง เมนูแบบเลื่อนลง

กล่องโต้ตอบชื่อ ตัวกรองขั้นสูง จะเปิดขึ้น

📌 ขั้นตอนที่ 2:

➤ เลือกตารางข้อมูลทั้งหมดสำหรับอินพุต ช่วงรายการ

➤ เลือก B15:B16 สำหรับ ช่วงเกณฑ์ .

➤ กด ตกลง .

และคุณจะเห็น ผลลัพธ์ที่กรองด้วยชื่อของพนักงานจากแผนก การผลิต เท่านั้น

อ่านเพิ่มเติม: VLOOKUP ที่มีหลายรายการ เกณฑ์ใน Excel (6 ตัวอย่าง)

6. VLOOKUP และส่งคืนค่าทั้งหมดโดยการจัดรูปแบบเป็นตาราง

ตอนนี้เราจะแสดงวิธีง่ายๆ อีกวิธีหนึ่งในการกรองตารางข้อมูลโดยการแปลงให้เป็นตารางที่จัดรูปแบบ

📌 ขั้นตอนที่ 1:

➤ เลือกตารางข้อมูลหลักก่อน

➤ จากเมนูแบบเลื่อนลง จัดรูปแบบเป็นตาราง ใต้ แท็บหน้าแรก เลือกตารางใดก็ได้ที่คุณต้องการ

หลังจากขั้นตอนแรก ตารางข้อมูลของคุณจะมีลักษณะดังที่แสดงในภาพหน้าจอต่อไปนี้พร้อมกับ ส่วนหัวที่กรองแล้ว

📌 ขั้นตอนที่ 2:

➤ เลือกตัวเลือก การผลิต ตัวเลือกหลังจากคลิกที่ปุ่มตัวกรองจากส่วนหัว แผนก

➤ กด ตกลง เป็นอันเสร็จ

ภาพหน้าจอด้านล่างแสดงผลลัพธ์ตามการเลือกที่ระบุ

อ่านเพิ่มเติม: การใช้ VBA VLOOKUP เพื่อ ค้นหาค่าจากแผ่นงานอื่นใน Excel

7.VLOOKUP เพื่อดึงข้อมูลที่ตรงกันทั้งหมดลงในเซลล์เดียวใน Excel

ฟังก์ชัน TEXTJOIN จะเชื่อมรายการหรือช่วงของสตริงข้อความโดยใช้ตัวคั่น ด้วยการรวมฟังก์ชัน TEXTJOIN และ IF เข้าด้วยกัน เราสามารถค้นหาค่าและแยกข้อมูลตามข้อมูลที่ตรงกันทั้งหมดลงในเซลล์เดียว

สูตรที่ต้องการในเอาต์พุต เซลล์ C16 จะเป็น:

=TEXTJOIN(", ",TRUE,IF($B$5:$B$13=$C$15,$C$5:$C$13,""))

หลังจากกด Enter คุณจะพบชื่อพนักงานจากปุ่ม แผนกการผลิต ในเซลล์เดียวคั่นด้วยเครื่องหมายจุลภาค

ในสูตรนี้ ฟังก์ชัน IF จะส่งกลับอาร์เรย์ที่มีชื่อตรงกัน เช่นเดียวกับค่าบูลีน 'FALSE” สำหรับเซลล์ที่ไม่ตรงกัน ฟังก์ชัน TEXTJOIN จะรวมชื่อทั้งหมดที่พบด้วยตัวคั่นที่ระบุ

อ่านเพิ่มเติม: VLOOKUP ข้อความบางส่วนจากเซลล์เดียวใน Excel

บทสรุป

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

Hugh West เป็นผู้ฝึกอบรมและนักวิเคราะห์ Excel ที่มีประสบการณ์สูงและมีประสบการณ์มากกว่า 10 ปีในอุตสาหกรรมนี้ เขาสำเร็จการศึกษาระดับปริญญาตรีสาขาการบัญชีและการเงิน และปริญญาโทสาขาบริหารธุรกิจ Hugh มีความหลงใหลในการสอนและได้พัฒนาแนวทางการสอนที่เป็นเอกลักษณ์ซึ่งง่ายต่อการติดตามและเข้าใจ ความรู้ความเชี่ยวชาญของเขาเกี่ยวกับ Excel ช่วยให้นักเรียนและผู้เชี่ยวชาญหลายพันคนทั่วโลกพัฒนาทักษะและความเป็นเลิศในอาชีพการงาน ฮิวจ์แบ่งปันความรู้ของเขากับคนทั้งโลกผ่านบล็อก โดยเสนอบทช่วยสอน Excel ฟรีและการฝึกอบรมออนไลน์เพื่อช่วยให้บุคคลและธุรกิจบรรลุศักยภาพสูงสุดของตนเอง