สารบัญ
วันนี้ผมจะพูดถึงฟังก์ชันยอดนิยมและใช้งานสูงของ MS Excel ที่ชื่อว่า ฟังก์ชัน VLOOKUP ฟังก์ชันนี้สามารถใช้เพื่อแยก เปรียบเทียบ เลื่อน หรือค้นหาข้อมูลในตารางหรือช่วงใดก็ได้ ฟังก์ชันเหล่านี้สามารถใช้ได้กับหลายคอลัมน์ ในบทความนี้ ฉันจะแสดงวิธีที่เราสามารถใช้ ฟังก์ชัน VLOOKUP สำหรับหลายคอลัมน์ เพื่อวัตถุประสงค์ต่างๆ ใน Excel
ดาวน์โหลดแบบฝึกหัดแบบฝึกหัด
คุณสามารถดาวน์โหลดแบบฝึกหัดแบบฝึกหัด จากที่นี่
การใช้ VLOOKUP สำหรับหลายคอลัมน์.xlsx
6 ตัวอย่างในอุดมคติของการใช้ VLOOKUP สำหรับหลายคอลัมน์ใน Excel
ที่นี่ ฉันได้นำชุดข้อมูลต่อไปนี้สำหรับบทความนี้ ประกอบด้วย รายละเอียดสินค้า สำหรับบางผลิตภัณฑ์ ฉันจะใช้ชุดข้อมูลนี้เพื่ออธิบายวิธีการ ใช้ VLOOKUP สำหรับหลายคอลัมน์ ใน Excel
1. รับค่าจากหลายคอลัมน์โดยใช้ฟังก์ชัน Excel VLOOKUP
สมมติว่าคุณมีรายการ รายละเอียดสินค้า ที่มี รหัส ชื่อ และ ราคาต่อหน่วย มีอีกตารางหนึ่งซึ่งจะเรียกว่า ภาพรวมการขาย ในตารางนี้ จะมี ID , ชื่อ , ราคาต่อหน่วย , ปริมาณ และ ยอดขายรวม งานของคุณคือสร้างการคำนวณอัตโนมัติของ ยอดขายรวม ในตาราง หากคุณเพียงแค่ป้อนผลิตภัณฑ์ ID สูตรจะแยกชื่อผลิตภัณฑ์และราคาจากตาราง รายละเอียดผลิตภัณฑ์ และสร้างเซลล์ที่เลือก =INDEX(D:D,MATCH(1,(C:C=C15)*(B:B=B15),0))
- ประการที่สาม กด Enter เพื่อรับ ผลลัพธ์
- หากคุณใช้ Microsoft Excel รุ่นเก่ากว่า Excel 2019 ให้กด Ctrl + Shift + Enter .
🔎 สูตรทำงานอย่างไร
- MATCH(1,(C:C=C15)*(B:B=B15),0): ส่วนนี้ของสูตรตรงกับที่ป้อน ID และ ชื่อ กับชุดข้อมูล และ “1” ในที่นี้หมายถึง TRUE เป็นการส่งคืนหมายเลขแถวที่เกณฑ์ทั้งหมดเป็น จริง .
- INDEX(D:D,MATCH(1,(C:C=C15)*(B:B=B15),0)): ตอนนี้ ฟังก์ชัน INDEX จะส่งคืนค่าจากภายในช่วง D:D .
- จากนั้น ลาก Fill Handle ลงเพื่อคัดลอกสูตรไปยังเซลล์อื่น
- ในตอนท้าย คุณจะเห็นว่าฉันได้คัดลอกสูตรไปยังเซลล์อื่นๆ ทั้งหมดแล้ว และได้ผลลัพธ์ที่ต้องการ
อ่านเพิ่มเติม: INDEX MATCH vs VLOOKUP Function (9 ตัวอย่าง)
ข้อผิดพลาดทั่วไปขณะใช้ฟังก์ชันเหล่านี้
ข้อผิดพลาดทั่วไป | เมื่อแสดง |
ข้อผิดพลาด #N/A | ข้อผิดพลาดนี้จะเกิดขึ้นหากสูตรเป็น สูตรอาร์เรย์ และคุณเพียงแค่กด Enter หากต้องการแก้ปัญหา ให้กด CTRL + SHIFT + ENTER . |
#N/A ใน VLOOKUP | ในทางปฏิบัติ มีเหตุผลหลายประการสาเหตุที่คุณอาจเห็นข้อผิดพลาดนี้ รวมถึง
|
#VALUE ใน CHOOSE | หาก index_num อยู่นอกช่วง CHOOSE จะส่งกลับ #VALUE ข้อผิดพลาด . |
ช่วงหรือค่าคงที่อาร์เรย์ | เลือก ฟังก์ชันจะไม่ดึงค่าจากช่วงหรือค่าคงที่อาร์เรย์ |
#VALUE ใน INDEX | ช่วงทั้งหมดต้องอยู่ในแผ่นงานเดียว มิฉะนั้น INDEX จะส่งกลับ #VALUE ข้อผิดพลาด |
ข้อควรจำ
- หากคุณใช้ Microsoft Excel เวอร์ชันเก่า กว่า Excel 2019 จากนั้นคุณจะต้องกด Ctrl + Shift + Enter สำหรับ สูตรอาร์เรย์ .
ส่วนการปฏิบัติ
ที่นี่ ฉันได้จัดทำส่วนการปฏิบัติสำหรับแต่ละอย่าง เพียงพอเพื่อให้คุณสามารถฝึกฝนการใช้ ฟังก์ชัน VLOOKUP สำหรับหลายคอลัมน์ ใน Excel ได้
สรุป
ดังนั้น วิธีใช้ฟังก์ชัน VLOOKUP สำหรับหลายคอลัมน์ ใน Excel ฉันได้แสดงวิธีการทั้งหมดพร้อมตัวอย่างที่เกี่ยวข้อง แต่อาจมีการทำซ้ำอื่น ๆ อีกมากมาย ฉันได้พูดคุยเกี่ยวกับพื้นฐานของฟังก์ชันที่ใช้แล้ว นอกจากนี้สมุดแบบฝึกหัดจะถูกเพิ่มไว้ที่จุดเริ่มต้นของบทความด้วย ดาวน์โหลดเพื่อใช้เป็นตัวอย่าง หากคุณมีวิธีอื่นใดในการบรรลุเป้าหมายนี้ โปรดอย่าลังเลที่จะแบ่งปันกับเรา
ยอดขายรวม โดยอัตโนมัติ
มาดูกันว่าคุณจะทำอย่างไร
ขั้นตอน:
- ขั้นแรก เลือกเซลล์ที่คุณต้องการให้ผลิตภัณฑ์ ชื่อ ที่นี่ ฉันเลือก เซลล์ C15 .
- อย่างที่สอง ใน เซลล์ C15 เขียนสูตรต่อไปนี้
=VLOOKUP(B15,$B$6:$D$11,{2,3},0)
- ประการที่สาม กด Enter เพื่อรับผลลัพธ์
- หากคุณใช้เวอร์ชันที่เก่ากว่า ของ Microsoft Excel มากกว่า Excel 2019 แล้วกด Ctrl + Shift + Enter .
🔎 สูตรทำงานอย่างไร
- ใน <1 ฟังก์ชัน>VLOOKUP อาร์กิวเมนต์แรกจะเก็บข้อมูลที่จะค้นหาในตาราง ที่นี่ B15 มี รหัส ซึ่งจะจับคู่กับตารางรายการผลิตภัณฑ์ รหัส
- $B$6:$ D$11 คือ ตารางอาร์เรย์ ช่วงที่จะค้นหาข้อมูล
- {2,3} หมายความว่าเรากำลังแยกคอลัมน์ที่สองและสาม ค่าของแถวที่ตรงกัน
- 0 เป็นตัวกำหนดว่าเราต้องการจับคู่แบบตรงทั้งหมด
- หลังจากนั้น ให้ลากปุ่ม Fill Handle ลงเพื่อคัดลอกสูตรไปยังเซลล์อื่น
- สุดท้าย คุณจะเห็นว่าฉันได้คัดลอกสูตรไปยังเซลล์อื่นแล้ว เซลล์และได้ผลลัพธ์ที่ต้องการ
หมายเหตุ: หากต้องการสร้าง ยอดขายรวม ฉันใช้สิ่งต่อไปนี้สูตร
=D15*E15
แล้วคัดลอกลงไปที่ F20
อ่านเพิ่มเติม:<2 Excel VLOOKUP เพื่อคืนค่าหลายค่าในแนวตั้ง
2. ใช้ฟังก์ชัน VLOOKUP สำหรับหลายคอลัมน์จากสมุดงานต่างๆ
ในตัวอย่างนี้ ฉันจะใช้ Excel VLOOKUP ฟังก์ชันรับข้อมูลจาก หลายคอลัมน์ จากสมุดงานต่างๆ ตอนนี้ชุดข้อมูลยังคงเหมือนเดิม แต่ทั้งสองตารางจะอยู่ในสมุดงานสองชุดที่แตกต่างกัน ตาราง รายละเอียดสินค้า อยู่ในสมุดงานชื่อ ตารางรายการผลิตภัณฑ์ ผมจะดึงชื่อและราคาจากตารางนี้ในตัวอย่างนี้
มาดูขั้นตอนกันครับ
ขั้นตอน:
- ในการเริ่มต้น ให้เลือกเซลล์ที่คุณต้องการให้ผลิตภัณฑ์ ชื่อ
- จากนั้น เขียนสูตรต่อไปนี้ในเซลล์ที่เลือกนั้น ที่นี่ฉันใช้ชื่อสมุดงาน Excel ที่ฉันใช้ คุณจะต้องเปลี่ยนตามนั้น
=VLOOKUP(B6,'[Product-List-Table.xlsx]Product Details'!$B$5:$D$10,{2,3},0)
- ถัดไป กด Enter เพื่อรับผลลัพธ์
- หากคุณใช้ Microsoft Excel รุ่นเก่ากว่า Excel 2019 ให้กด Ctrl + Shift + Enter .
ที่นี่ สูตรจะเหมือนกับสูตรของวิธีก่อนหน้า ข้อแตกต่างที่สำคัญประการเดียวคือเนื่องจากตารางต้นฉบับอยู่ในไฟล์อื่น เราจึงต้องใช้การอ้างอิงของไฟล์โดยใช้ '[Product-List-Table.xlsx]Product Details'!$B$5:$D $10part.
- หลังจากนั้น ลาก Fill Handle ลงเพื่อคัดลอกสูตร
- ในภาพต่อไปนี้ คุณจะเห็นว่าฉันได้คัดลอกสูตรไปยังเซลล์อื่นและได้ผลลัพธ์ที่ต้องการแล้ว
อ่าน เพิ่มเติม: VLOOKUP เพื่อส่งคืนหลายคอลัมน์ใน Excel (4 ตัวอย่าง)
การอ่านที่คล้ายกัน
- VLOOKUP ไม่ใช่ การทำงาน (8 เหตุผลและแนวทางแก้ไข)
- Excel VLOOKUP เพื่อค้นหาค่าสุดท้ายในคอลัมน์ (พร้อมตัวเลือกอื่น)
- VLOOKUP และส่งคืนรายการที่ตรงกันทั้งหมดใน Excel (7 วิธี)
- การใช้ VBA VLOOKUP เพื่อค้นหาค่าจากแผ่นงานอื่นใน Excel
3. ใช้ VLOOKUP เพื่อค้นหาค่าจากหลายค่า คอลัมน์และรับผลรวม
สำหรับตัวอย่างนี้ ฉันได้นำชุดข้อมูลต่อไปนี้ สมมติว่า คุณมี ชื่อ ของนักเรียนบางคนและได้คะแนน ฟิสิกส์ และ เคมี คุณมีตารางอื่นที่มีชื่อเท่านั้น และคุณต้องการแสดงเครื่องหมายรวมข้างชื่อของพวกเขา ตอนนี้ ฉันจะแสดงให้คุณเห็นว่าคุณสามารถใช้ฟังก์ชัน VLOOKUP เพื่อค้นหาค่าจาก หลายคอลัมน์ และรับ เครื่องหมายรวม จากค่าเหล่านั้นใน Excel
ให้ฉันแสดงวิธีที่คุณสามารถทำได้
ขั้นตอน:
- ขั้นแรก เลือกเซลล์ ที่คุณต้องการ คะแนนรวม ที่นี่ ฉันเลือก เซลล์ G5 .
- ประการที่สอง ใน เซลล์ G5 เขียนสิ่งต่อไปนี้สูตร
=SUM(VLOOKUP(F5,$B$5:$D$12,{2,3},FALSE))
- ประการที่สาม กด Enter เพื่อ รับ ผลรวม เครื่องหมาย .
- หากคุณใช้ Microsoft Excel รุ่นเก่ากว่า Excel 2019 ให้กด Ctrl + Shift + Enter .
🔎 สูตรทำงานอย่างไร
- VLOOKUP(F5,$B$5:$D$12,{2,3},FALSE): ที่นี่ ในฟังก์ชัน VLOOKUP ฉันเลือก F5 เป็น lookup_value , $B$5:$D$12 เป็น table_array , {2,3} เป็น col_index_num และ FALSE เป็น range_lookup สูตรส่งคืนค่าที่ตรงกันสำหรับ lookup_value จากคอลัมน์ 2 และ 3 ของ table_array .
- SUM(VLOOKUP(F5,$B$5:$D$12,{2,3},FALSE)): ตอนนี้ ฟังก์ชัน SUM ส่งคืน ผลรวม ของทั้งสอง ค่าที่ได้จากฟังก์ชัน VLOOKUP
- หลังจากนั้น ให้ลาก Fill Handle ลงเพื่อคัดลอกสูตรไปยังเซลล์อื่นๆ <14
- ถัดไป คุณจะเห็นว่าฉันได้คัดลอกสูตรไปยังเซลล์อื่นๆ ทั้งหมดและได้ผลลัพธ์ที่ต้องการแล้ว
4. ใช้ฟังก์ชัน VLOOKUP และ IFERROR เพื่อเปรียบเทียบหลายคอลัมน์ใน Excel
สำหรับส่วนนี้ ให้ถือว่าคุณมีชุดข้อมูล งาน และชื่อของ พนักงานที่ได้รับมอบหมายให้ทำงานนั้น มีคอลัมน์ที่มีชื่อของ พนักงานเก่า ที่ได้รับมอบหมายงาน ชื่อของ พนักงานใหม่ ที่ถูกกำหนดให้กับงานนั้น และชื่อของ พนักงานที่คาดหวังในปัจจุบัน สำหรับงานเหล่านั้น ตอนนี้ งานของคุณคือการเปรียบเทียบชื่อของสองคอลัมน์ของ พนักงานเก่า และ พนักงานใหม่ และระบุข้อมูลที่ตรงกัน จากนั้น คุณจะต้องเปรียบเทียบคอลัมน์ พนักงานที่คาดไว้ในปัจจุบัน ชื่อกับชื่อที่ตรงกันและส่งคืนชื่อนั้นหากชื่อนั้นอยู่ในคอลัมน์ 3 ทั้งหมด
<32
มาดูกันว่าคุณจะทำอย่างไร
ขั้นตอน:
- ขั้นแรก เลือกเซลล์ที่คุณต้องการให้ชื่อของ พนักงานที่ตรงกัน .
- จากนั้น เขียนสูตรต่อไปนี้ในเซลล์ที่เลือก
=IFERROR(VLOOKUP(IFERROR(VLOOKUP(C6:C11,D6:D11,1,FALSE),""),E6:E11,1,FALSE),"")
- สุดท้าย กด Enter เพื่อรับผลลัพธ์ หากคุณใช้ Microsoft Excel รุ่นเก่ากว่า Excel 2019 ให้กด Ctrl + Shift + Enter .
🔎 สูตรทำงานอย่างไร
- VLOOKUP(C6:C11,D6:D11,1,FALSE): ส่วนนี้ของสูตรเปรียบเทียบคอลัมน์ พนักงานเก่า กับ พนักงานใหม่ คอลัมน์
- IFERROR(VLOOKUP(C6:C11,D6:D11,1,FALSE),””): ตอนนี้ ฟังก์ชัน IFERROR แทนที่ #N/A ด้วย สตริงว่าง .
- VLOOKUP(IFERROR(VLOOKUP(C6:C11,D6:D11,1,FALSE),””) ,E6:E11,1,FALSE): ที่นี่ ฟังก์ชัน VLOOKUP จะเปรียบเทียบคอลัมน์ พนักงานที่คาดหวังในปัจจุบัน กับค่าการจับคู่ที่ส่งคืนจากฟังก์ชัน VLOOKUP แรก
- IFERROR(VLOOKUP(IFERROR(VLOOKUP(C6:C11,D6:D11,1,FALSE),””) E6:E11,1,FALSE),””): สุดท้าย ฟังก์ชัน IFERROR แทนที่ #N/A ด้วย สตริงว่าง
อ่านเพิ่มเติม: เหตุใด VLOOKUP จึงส่งคืน #N/A เมื่อตรงกัน (5 สาเหตุและแนวทางแก้ไข)
5. รวมฟังก์ชัน CHOOSE และ VLOOKUP สำหรับหลายเกณฑ์
ที่นี่ ฉันจะแสดงวิธีดึงข้อมูลจาก หลายคอลัมน์ โดยใช้ หลายเกณฑ์ สมมติว่าเรามีชุดข้อมูลการขายที่มี พนักงานขาย , เดือน และ ยอดขาย ตอนนี้งานของคุณคือสร้างตารางใหม่ซึ่งคุณจะแสดงยอดขายทั้งหมดในคอลัมน์ซึ่งแต่ละคอลัมน์จะแสดงในแต่ละเดือน
มาดูขั้นตอนกัน
ขั้นตอน:
- เริ่มต้นด้วยการเลือกเซลล์ที่คุณต้องการให้ ยอดขาย เป็นเวลาหนึ่งเดือน ที่นี่ ฉันเลือก เซลล์ G6 .
- ถัดไป ใน เซลล์ G6 เขียนสูตรต่อไปนี้
=VLOOKUP($F6&G$5,CHOOSE({1,2},$B$5:$B$12&$C$5:$C$12,$D$5:$D$12),2,0)
- หลังจากนั้น กด Enter เพื่อรับผลลัพธ์
- หากคุณใช้ <1 เวอร์ชันเก่ากว่า>Microsoft Excel มากกว่า Excel 2019 แล้วกด Ctrl + Shift + Enter .
🔎 สูตรทำงานอย่างไร
- เลือก({1 ,2},$B$5:$B$12&$C$5:$C$12,$D$5:$D$12): ที่นี่ ใน ตัวเลือกฟังก์ชัน ฉันเลือก {1,2} เป็น index_num , $B$5:$B$12&$C$5:$C$12 เป็น value1 และ $D$5:$D$12 เป็น value2 สูตรนี้คืนค่าโดยใช้ index_num .
- VLOOKUP($F6&G$5,CHOOSE({1,2},$B$5:$B$12&$ C$5:$C$12,$D$5:$D$12),2,0): ตอนนี้ VLOOKUP ฟังก์ชันค้นหาข้อมูลที่ตรงกันและส่งกลับค่าตามนั้น
- ถัดไป ลาก Fill Handle ลงเพื่อคัดลอกสูตร
- จากนั้น ลาก Fill Handle right .
- สุดท้าย คุณจะเห็นว่าฉันได้คัดลอกสูตรไปยังเซลล์อื่นทั้งหมดและได้ผลลัพธ์ที่ต้องการแล้ว
อ่านเพิ่มเติม: ใช้ VLOOKUP ที่มีหลายเกณฑ์ใน Excel (6 วิธี + ทางเลือก)
6. ใช้ฟังก์ชัน VLOOKUP และ MATCH เพื่อค้นหาค่าแบบไดนามิกจากหลายคอลัมน์
ในตัวอย่างนี้ ฉันจะแสดงให้คุณเห็นว่าคุณสามารถค้นหาค่าแบบไดนามิกจากหลายคอลัมน์โดยใช้ฟังก์ชัน VLOOKUP ใน เอ็กเซล ฉันได้นำชุดข้อมูลต่อไปนี้สำหรับตัวอย่างนี้ ประกอบด้วย รหัสนักศึกษา , ชื่อ และ เครื่องหมาย ในอีกตารางหนึ่ง ฉันมี รหัสนักศึกษา ตอนนี้ ฉันจะใช้ฟังก์ชัน VLOOKUP เพื่อหาค่าเทียบกับ รหัสนักศึกษา แบบไดนามิก
มาดูวิธีการกัน .
ขั้นตอน:
- ประการแรก เลือกเซลล์ที่คุณต้องการให้ เครื่องหมาย .
- ประการที่สอง เขียน ต่อไปนี้สูตรในเซลล์ที่เลือก
=VLOOKUP(F5,$B$4:$D$12,MATCH($G$4,$B$4:$D$4,0),FALSE)
- ประการที่สาม กด Enter เพื่อให้ได้ผลลัพธ์
🔎 สูตรทำงานอย่างไร
<7- MATCH($G$4,$B$4:$D$4,0): ที่นี่ ใน ฟังก์ชัน MATCH ฉันเลือก $G $4 เป็น l ookup_value , $B$4:$D$4 เป็น lookup_array และ 0 เป็น match_type . สูตรจะส่งกลับตำแหน่งสัมพัทธ์ของ lookup_value ใน lookup_array
- VLOOKUP(F5,$B$4:$D$12,MATCH($ G$4,$B$4:$D$4,0),FALSE): ตอนนี้ VLOOKUP ฟังก์ชันส่งคืนการจับคู่
- หลังจากนั้น ลาก Fill Handle ลงเพื่อคัดลอกสูตร
- สุดท้าย คุณจะเห็นว่าฉันได้คัดลอกสูตรไปยัง เซลล์อื่นและได้ผลลัพธ์ที่ต้องการ
ทางเลือกแทนฟังก์ชัน VLOOKUP สำหรับหลายคอลัมน์ใน Excel
ในส่วนนี้ ฉันจะทำเช่นเดียวกัน การทำงานแต่มีฟังก์ชันต่างกัน (ไม่มี VLOOKUP ) ในที่นี้ ผมจะใช้ ฟังก์ชัน INDEX และฟังก์ชัน Match ตอนนี้ ลองพิจารณาชุดข้อมูลเดียวกันกับที่คุณใช้ในตัวอย่างแรก ฉันจะหา ราคาต่อหน่วย ของผลิตภัณฑ์โดยใช้ ชื่อ และ ID .
มาดูกัน ขั้นตอน
ขั้นตอน:
- ในตอนเริ่มต้น ให้เลือกเซลล์ที่คุณต้องการ ราคาต่อหน่วย
- ถัดไป เขียนสูตรต่อไปนี้ในนั้น