วิธี VLOOKUP หลายค่าในเซลล์เดียวใน Excel (2 วิธีง่ายๆ)

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

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

โดยทั่วไป เราจะไม่ได้ใช้ฟังก์ชัน VLOOKUP โดยตรงที่นี่ เราจะค้นหาค่าหลายค่าในเซลล์เดียวซึ่งจะคล้ายกับฟังก์ชัน VLOOKUP เราหวังว่าคุณจะพบว่าบทช่วยสอนนี้มีประโยชน์

ดาวน์โหลดแบบฝึกหัด

Vlookup ค่าหลายค่าในเซลล์เดียว.xlsm

2 วิธีง่ายๆ สำหรับ Vlookup ค่าหลายค่าในเซลล์เดียว

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

เพื่อแสดงปัญหานี้ เราจะใช้ชุดข้อมูลต่อไปนี้:

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

1. การใช้สูตรเพื่อ Vlookup หลายค่าในเซลล์เดียวใน Excel

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

ฟังก์ชัน TEXTJOINใช้ได้เฉพาะกับ Excel 2019 และ Office 365 เท่านั้น

ไวยากรณ์พื้นฐานของฟังก์ชัน TEXTJOIN:

=TEXTJOIN(delimiter, ignore_empty, text1, [text2], …)

ที่นี่ ตัวคั่นของเราจะเป็นเครื่องหมายจุลภาค ( “,” ) เพื่อแยกค่าในเซลล์เดียว

1.1 ฟังก์ชัน TEXTJOIN และ IF

ตอนนี้ สูตรนี้ค่อนข้างใช้งานง่าย สูตรนี้จะค้นหาค่าและแทรกลงในเซลล์เดียวด้วยเครื่องหมายจุลภาค แต่โปรดจำไว้ว่าสูตรนี้จะส่งคืนค่าที่ซ้ำกัน

ไวยากรณ์พื้นฐาน:

=TEXTJOIN(", ",TRUE,IF(lookup_value=lookup_range,,finding_range,""))

📌 ขั้นตอน

1. ขั้นแรก พิมพ์สูตรต่อไปนี้ใน เซลล์ F5 :

=TEXTJOIN(", ",TRUE,IF(E5=B5:B13,C5:C13,""))

2. จากนั้นกด Enter

3. สุดท้าย ลากไอคอน Fill Handle ไปไว้เหนือช่วงของเซลล์ F6:F7 .

ในที่สุด เราก็ทำสำเร็จ เพื่อใช้ VLOOKUP หลายค่าในเซลล์เดียว

🔎 รายละเอียดของสูตร

เราใช้รายละเอียดนี้สำหรับบุคคล “John” เท่านั้น

IF(E5=B5:B13,C5:C13,"")

ฟังก์ชันนี้ส่งคืนอาร์เรย์ต่อไปนี้:

<0 {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}

TEXTJOIN(", ",TRUE,IF(E5=B5:B13,C5:C13,""))

สุดท้าย ฟังก์ชัน TEXTJOIN จะคืนค่าต่อไปนี้ผลลัพธ์:

{Mobile, TV, Fridge, Mobile}

อ่านเพิ่มเติม: Excel VLOOKUP เพื่อส่งคืนค่าหลายค่าในเซลล์เดียวโดยคั่นด้วยเครื่องหมายจุลภาค

1.2 ฟังก์ชัน TEXTJOIN และ MATCH (ไม่มีรายการซ้ำ)

ตอนนี้ ถ้าคุณต้องการหลายค่าในเซลล์เดียว คุณอาจใช้สูตรนี้ สูตรนี้เป็นการรวมกันของฟังก์ชัน TEXTJOIN และ MATCH สูตรนี้ค่อนข้างซับซ้อนเล็กน้อยในการใช้งาน แต่แน่นอนว่าจะให้ค่าที่คุณต้องการ

📌 ขั้นตอน

1. ขั้นแรก พิมพ์สูตรต่อไปนี้ใน เซลล์ F5 :

=TEXTJOIN(",", TRUE, IF(IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")=MATCH(ROW(C5:C13), ROW(C5:C13)), C5:C13, ""))

2. จากนั้นกด Enter

3. สุดท้าย ลากไอคอน Fill Handle ไปไว้เหนือช่วงของเซลล์ F6:F7 .

ในที่สุด เราก็ทำสำเร็จ เพื่อใช้ VLOOKUP ค่าหลายค่าในเซลล์เดียวโดยไม่มีค่าที่ซ้ำกัน

🔎 รายละเอียดของสูตร

เรากำลังใช้รายละเอียดนี้สำหรับบุคคล “John” เท่านั้น

ROW(C5:C13)

โดยส่งคืนอาร์เรย์ของ {5;6;7;8;9;10;11;12;13}

MATCH(ROW(C5:C13), ROW(C5:C13))

คืนค่า: {1;2;3;4;5;6;7;8;9}

IF(E5=B5:B13, C5:C13, "")

ส่งกลับ: {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}

MATCH(C5:C13, IF(E5=B5:B13, C5:C13, "")

ฟังก์ชันนี้ส่งคืน: {8;8;7;9;7;7;7;8;7}

IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")

ส่งคืน: {1;1;"";4;"";6;"";1;""}

IF(IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")=MATCH(ROW(C5:C13), ROW(C5:C13)), C5:C13, "")

จะส่งกลับ: {"Mobile";"";"";"TV";"";"Fridge";"";"";""}

TEXTJOIN(",", TRUE, IF(IFERROR(MATCH(C5:C13, IF(E5=B5:B13, C5:C13, ""), 0),"")=MATCH(ROW(C5:C13), ROW(C5:C13)), C5:C13, ""))

เอาต์พุตสุดท้ายจะเป็น มือถือ ทีวี ตู้เย็น .

อ่านเพิ่มเติม: วิธีดำเนินการ VLOOKUP ด้วยหลายแถวใน Excel (5 วิธี)

1.3ฟังก์ชัน TEXTJOIN และ UNIQUE (ไม่มีรายการที่ซ้ำกัน)

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

ไวยากรณ์พื้นฐานของฟังก์ชัน UNIQUE:

=UNIQUE (array, [by_col], [exactly_once])

อาร์เรย์ – ช่วงหรืออาร์เรย์ที่จะแยกค่าที่ไม่ซ้ำ

<0 by_col – [ไม่บังคับ] วิธีเปรียบเทียบและแยกข้อมูล ตามแถว = FALSE (ค่าเริ่มต้น); ตามคอลัมน์ = TRUE.

exactly_once – [ทางเลือก] TRUE = ค่าที่เกิดขึ้นครั้งเดียว FALSE= ค่าที่ไม่ซ้ำกันทั้งหมด (ค่าเริ่มต้น)

📌 ขั้นตอน

1. ขั้นแรก พิมพ์สูตรต่อไปนี้ใน เซลล์ F5 :

=TEXTJOIN(", ",TRUE,UNIQUE(IF(E5=B5:B13,C5:C13,"")))

2. จากนั้นกด Enter

3. สุดท้าย ลากไอคอน Fill Handle ไปไว้เหนือช่วงของเซลล์ F6:F7

อย่างที่คุณเห็น เรามี ใช้ VLOOKUP หลายค่าในเซลล์เดียวสำเร็จแล้ว

🔎 รายละเอียดของสูตร

เราใช้รายละเอียดนี้เฉพาะกับบุคคล “John”

➤ IF(E5=B5:B13,C5:C13,"")

ส่งคืน {"Mobile";"";"";"TV";"";"Fridge";"";"Mobile";""}

➤ UNIQUE(IF(E5=B5:B13,C5:C13,""))

มันส่งคืน {"Mobile";"";"TV";"Fridge"}

TEXTJOIN(", ",TRUE,UNIQUE(IF(E5=B5:B13,C5:C13,"")))

ผลลัพธ์สุดท้าย มือถือ ทีวี ตู้เย็น

อ่านเพิ่มเติม: วิธี Vlookup และส่งคืนค่าหลายค่าในรายการแบบเลื่อนลง

2. การใช้รหัส VBA เพื่อ Vlookup ค่าหลายค่าในเซลล์เดียว

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

2.1 รหัส VBA หลายค่าในเซลล์เดียว

📌 ขั้นตอน

1. อันดับแรก. กด Alt+F11 เพื่อเปิด Visual Basic Editor

2. จากนั้นคลิกที่ แทรก > โมดูล .

3. จากนั้นพิมพ์รหัสต่อไปนี้:

2433

4. ตอนนี้ไปที่แผ่นงานของคุณ จากนั้นพิมพ์สูตรต่อไปนี้ใน เซลล์ F5 :

=MultipleValues(B5:B13,E5,C5:C13,",")

5 จากนั้นกด ENTER

6. สุดท้าย ลากไอคอน Fill Handle ไปไว้เหนือช่วงของเซลล์ F6:F7

ในท้ายที่สุด เราใช้ VLOOKUP หลายค่าในเซลล์เดียว .

อ่านเพิ่มเติม: VLOOKUP เพื่อส่งกลับค่าหลายค่าในแนวนอนใน Excel

2.2 VBA รหัสเพื่อค้นหาค่าหลายค่าในเซลล์เดียว (โดยไม่ต้องทำซ้ำ)

📌 ขั้นตอน

1. อันดับแรก. กด Alt+F11 เพื่อเปิด Visual Basic Editor

2. แล้ว,คลิกที่ แทรก > โมดูล .

3. จากนั้นพิมพ์รหัสต่อไปนี้:

7006

4. หลังจากใส่โค้ดแล้ว ให้คลิก เครื่องมือ > References ในหน้าต่าง Microsoft Visual Basic for Applications ที่เปิดอยู่ จากนั้นในกล่องโต้ตอบ References – VBAProject ที่โผล่ขึ้นมา ให้ทำเครื่องหมายที่ตัวเลือก Microsoft Scripting Runtime ใน การอ้างอิงที่มี กล่องรายการ คลิกที่ ตกลง .

5. ตอนนี้ไปที่แผ่นงานของคุณ จากนั้น พิมพ์สูตรต่อไปนี้ใน เซลล์ F5 :

=ValuesNoDup(E5,B5:B13,2)

ที่นี่ 2 คือหมายเลขคอลัมน์ของชุดข้อมูล

6. จากนั้น กด Enter .

7. สุดท้าย ลากไอคอน Fill Handle ไปไว้เหนือช่วงของเซลล์ F6:F7

อย่างที่คุณเห็น เรามี ใช้ VLOOKUP หลายค่าในเซลล์เดียวโดยไม่ซ้ำกัน

อ่านเพิ่มเติม: วิธี VLOOKUP และคืนค่าหลายค่าใน Excel (8 วิธี)

สรุป

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

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