ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้

ฟังก์ชัน VLOOKUP

เคล็ดลับ: ลองใช้ฟังก์ชัน XLOOKUP ใหม่ VLOOKUP เวอร์ชันที่ปรับปรุงแล้วซึ่งใช้งานได้ทุกทิศทางและส่งกลับรายการที่ตรงกันทุกรายการตามค่าเริ่มต้น ซึ่งช่วยให้การใช้งานง่ายขึ้นและสะดวกกว่างานก่อนหน้า

ใช้ VLOOKUP เมื่อคุณต้องการค้นหาสิ่งต่างๆ ในตารางหรือช่วงตามแถว ตัวอย่างเช่น ค้นหาราคาของรถยนต์ตามหมายเลขชิ้นส่วน หรือค้นหาชื่อพนักงานตาม ID ของพนักงาน

เคล็ดลับ: ดูวิดีโอ YouTube เหล่านี้จาก Microsoft Creators เพื่อขอความช่วยเหลือเพิ่มเติมเกี่ยวกับ VLOOKUP!

ในรูปแบบที่ง่ายที่สุด ฟังก์ชัน VLOOKUP จะระบุว่า:

=VLOOKUP(สิ่งที่คุณต้องการค้นหา ที่คุณต้องการค้นหา หมายเลขคอลัมน์ในช่วงมีค่าที่จะส่งกลับ ส่งกลับค่าที่ตรงกันโดยประมาณหรือค่าที่ตรงกันทุกรายการ ซึ่งระบุเป็น 1/TRUE หรือ 0/FALSE)

เบราว์เซอร์ของคุณไม่สนับสนุนวิดีโอ

เคล็ดลับ: ความลับของ VLOOKUP คือการจัดระเบียบข้อมูลของคุณ เพื่อให้ค่าที่คุณค้นหา (ผลไม้) อยู่ทางด้านซ้ายของค่าที่ส่งกลับ (จำนวน) ที่คุณต้องการค้นหา

ใช้ฟังก์ชัน VLOOKUP เพื่อหาค่าในตาราง

ไวยากรณ์

VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])

ตัวอย่างเช่น

  • =VLOOKUP(A2,A10:C20,2,TRUE)

  • =VLOOKUP("กิจจาการ",B2:E7,2,FALSE)

  • =VLOOKUP(A2,'รายละเอียดลูกค้า'! A:F,3,FALSE)

ชื่ออาร์กิวเมนต์

คำอธิบาย

lookup_value    (จำเป็น)

ค่าที่คุณต้องการค้นหา ค่าที่คุณต้องการค้นหาต้องอยู่ในคอลัมน์แรกของช่วงของเซลล์ที่คุณระบุในอาร์กิวเมนต์table_arrayเซลล์

ตัวอย่างเช่น ถ้าอาร์เรย์ ตารางครอบคลุม เซลล์ B2:D7 เซลล์lookup_valueคุณต้องอยู่ในคอลัมน์ B

Lookup_value อาจเป็นค่าหรือการอ้างอิงไปยังเซลล์

table_array    (จำเป็น)

ช่วงของเซลล์ที่ VLOOKUP จะค้นหา lookup_value และส่งกลับค่า คุณสามารถใช้ช่วงที่มีชื่อหรือตาราง และคุณสามารถใช้ชื่อในอาร์กิวเมนต์แทนการอ้างอิงเซลล์ได้ 

คอลัมน์แรกในช่วงของเซลล์ต้องมีlookup_value ช่วงเซลล์ยังต้องการรวมค่าส่งกลับที่คุณต้องการค้นหาด้วย

เรียนรู้วิธีเลือกช่วงในเวิร์กชีต

col_index_num    (จำเป็น)

หมายเลขคอลัมน์ (เริ่มต้นด้วย 1 เป็นคอลัมน์ซ้ายtable_array )ที่ประกอบด้วยค่าที่ส่งกลับ

range_lookup    (มีหรือไม่มีก็ได้)

ค่าตรรกะที่ระบุว่าคุณต้องการให้ VLOOKUP ค้นหาค่าที่ตรงกันโดยประมาณหรือค่าที่ตรงกันพอดี:

  • ค่าที่ตรงกันโดยประมาณ - 1/TRUE จะถือว่าคอลัมน์แรกในตารางถูกเรียงล>บตัวเลขหรือตามตัวอักษร จากนั้นจะค้นหาค่าที่ใกล้เคียงที่สุด นี่คือวิธีเริ่มต้นถ้าคุณไม่ระบุ ตัวอย่างเช่น =VLOOKUP(90,A1:B100,2,TRUE)

  • ค่าที่ตรงกันทุกประการ - 0/FALSE จะค้นหาค่าที่ตรงกันในคอลัมน์แรก ตัวอย่างเช่น =VLOOKUP("Smith",A1:B100,2,FALSE)

เริ่มต้นอย่างไร

มีข้อมูลสี่อย่างที่คุณจำเป็นต้องมีเพื่อที่จะสร้างไวยากรณ์ VLOOKUP:

  1. ค่าที่คุณต้องการค้นหา หรือที่เรียกว่าค่าการค้นหา

  2. ช่วงที่มีค่าการค้นหา โปรดทราบว่าค่าการค้นหาควรอยู่ในคอลัมน์แรกในช่วง เพื่อให้ฟังก์ชัน VLOOKUP สามารถทำงานได้อย่างถูกต้อง เช่น ถ้าค่าการค้นหาของคุณอยู่ในเซลล์ C2 แสดงว่าช่วงของคุณควรเริ่มด้วย C

  3. หมายเลขคอลัมน์ในช่วงที่ประกอบด้วยค่าที่ส่งกลับ ตัวอย่างเช่น ถ้าคุณระบุ B2:D11 เป็นช่วง คุณควรนับ B เป็นคอลัมน์แรก C เป็นคอลัมน์ที่สอง และอื่นๆ

  4. นอกจากนี้ คุณสามารถระบุค่าเป็น TRUE ถ้าคุณต้องการค่าส่งกลับเป็นที่ตรงกันโดยประมาณ หรือ FALSE ถ้าคุณต้องการค่าส่งกลับเป็นที่ตรงกันพอดี ถ้าคุณไม่ระบุค่าใดๆ ค่าเริ่มต้นจะเป็น TRUE หรือค่าที่ตรงกันโดยประมาณเสมอ

ในตอนนี้ ให้นำค่าทั้งหมดทางด้านบนมารวมกันตามตัวอย่างทางด้านล่าง:

=VLOOKUP(ค่าการค้นหา, ช่วงที่ประกอบด้วยค่าการค้นหา, หมายเลขคอลัมน์ในช่วงที่ประกอบด้วยค่าส่งกลับ, ค่าที่ตรงกันโดยประมาณ (TRUE) หรือค่าที่ตรงกันทั้งหมด (FALSE))

ตัวอย่าง

ต่อไปนี้เป็นตัวอย่างเล็กน้อยของฟังก์ชัน VLOOKUP:

ตัวอย่าง 1

ตัวอย่าง VLOOKUP 1

ตัวอย่าง 2

ตัวอย่าง VLOOKUP 2

ตัวอย่าง 3

ตัวอย่าง VLOOKUP 3

ตัวอย่าง 4

ตัวอย่าง VLOOKUP 4

ตัวอย่าง 5

ตัวอย่าง VLOOKUP 5

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

เวิร์กชีตที่มีคอลัมน์ที่ใช้ VLOOKUP เพื่อรับข้อมูลจากตารางอื่นๆ

ที่นี่ คอลัมน์ A-F และ H มีค่าหรือสูตรที่ใช้เฉพาะค่าบนเวิร์กชีต และส่วนที่เหลือของคอลัมน์จะใช้ VLOOKUP และค่าในคอลัมน์ A (รหัสไคลเอ็นต์) และคอลัมน์ B (การมอบอํานาจ) เพื่อรับข้อมูลจากตารางอื่นๆ

  1. คัดลอกตารางที่มีเขตข้อมูลร่วมลงในเวิร์กชีตใหม่ และตั้งชื่อ

  2. คลิก >เครื่องมือ>สร้างความสัมพันธ์เพื่อเปิดกล่องโต้ตอบ จัดการความสัมพันธ์

    กล่องโต้ตอบ จัดการความสัมพันธ์
  3. ในแต่ละความสัมพันธ์ที่แสดงรายการ ให้สังเกตสิ่งต่อไปนี้

    • เขตข้อมูลที่ลิงก์ตาราง (แสดงอยู่ในวงเล็บในกล่องโต้ตอบ) นี่คือรายการ lookup_value สูตร VLOOKUP ของคุณ

    • ชื่อตารางการค้นหาที่เกี่ยวข้อง นี่คือสูตร table_array ในสูตร VLOOKUP ของคุณ

    • เขตข้อมูล (คอลัมน์) ในตารางการค้นหาที่เกี่ยวข้องที่มีข้อมูลที่คุณต้องการในคอลัมน์ใหม่ของคุณ ข้อมูลนี้จะไม่แสดงในกล่องโต้ตอบจัดการความสัมพันธ์ - คุณจะต้องดูที่ตารางการค้นหาที่เกี่ยวข้องเพื่อดูว่าเขตข้อมูลใดที่คุณต้องการเรียกใช้ คุณต้องการจดหมายเลขคอลัมน์ (A=1) - นี่คือ col_index_numในสูตร ของคุณ

  4. เมื่อต้องการเพิ่มเขตข้อมูลลงในตารางใหม่ ให้ใส่สูตร VLOOKUP ของคุณในคอลัมน์ว่างแรกโดยใช้ข้อมูลที่คุณรวบรวมไว้ในขั้นตอนที่ 3

    ในตัวอย่างของเรา คอลัมน์ G ใช้ทนายความ(the lookup_value) เพื่อรับข้อมูลอัตราการเรียกเก็บเงินจากคอลัมน์ที่สี่ (col_index_num = 4) จากตารางเวิร์กชีตหนังสือมอบฉันทะ tblAttorneys (the table_array) ด้วยสูตร=VLOOKUP([@Attorney],tbl_Attorneys,4,FALSE)

    สูตรอาจใช้การอ้างอิงเซลล์และการอ้างอิงช่วง In our example, it would be =VLOOKUP(A2,'Attorneys'! A:D,4,FALSE)

  5. เพิ่มเขตข้อมูลต่อไปจนกว่าคุณจะมีเขตข้อมูลทั้งหมดที่คุณต้องการ ถ้าคุณพยายามเตรียมเวิร์กบุ๊กที่มีฟีเจอร์ข้อมูลที่ใช้หลายตาราง ให้เปลี่ยนแหล่งข้อมูลของฟีเจอร์ข้อมูลเป็นตารางใหม่

ปัญหา

สิ่งที่ผิดพลาด

ค่าที่ส่งกลับไม่ถูกต้อง

ถ้า range_lookup เป็น TRUE หรือไม่ได้รวมไว้ คอลัมน์แรกต้องถูกเรียงลำดับตามตัวอักษรหรือตามตัวเลข ถ้าไม่ได้เรียงลำดับคอลัมน์แรก ค่าที่ส่งกลับอาจเป็นบางอย่างที่คุณไม่ได้คาดไว้ ให้เรียงลำดับคอลัมน์แรก หรือใช้ FALSE สำหรับค่าที่ตรงกันพอดี

#N/A ในเซลล์

  • ถ้า range_lookup เป็น TRUE และถ้าค่าใน lookup_value น้อยกว่าค่าที่น้อยที่สุดในคอลัมน์แรกของ table_array คุณจะได้รับค่าความผิดพลาด #N/

  • ถ้า range_lookup เป็น FALSE ค่าความผิดพลาด #N/A จะหมายความว่า ไม่พบตัวเลขที่ตรงกันทุกประการ

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการแก้ไขข้อผิดพลาด #N/A ใน VLOOKUP ให้ดู วิธีแก้ไขข้อผิดพลาด #N/A ในฟังก์ชัน VLOOKUP

#REF! ในเซลล์

ถ้า col_index_num มากกว่าตัวเลขของคอลัมน์ใน table-array คุณจะได้รับค่าความผิดพลาด #REF!

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการแก้ไขข้อผิดพลาด#REF! ใน VLOOKUP ให้ดู วิธีแก้ไขข้อผิดพลาด #REF! ในฟังก์ชัน VLOOKUP

#VALUE! ในเซลล์

ถ้า table_array น้อยกว่า 1 คุณจะได้รับค่าความผิดพลาด #VALUE!

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการแก้ไขข้อผิดพลาด #VALUE! ใน VLOOKUP ให้ดู วิธีแก้ไขข้อผิดพลาด #VALUE! ในฟังก์ชัน VLOOKUP

#NAME? ในเซลล์

#NAME? โดยปกติแล้ว ค่าความผิดพลาดจะหมายความว่า สูตรไม่มีเครื่องหมายอัญประกาศ สำหรับการค้นหาชื่อของบุคคล ตรวจสอบให้แน่ใจว่าคุณใช้เครื่องหมายอัญประกาศครอบชื่อในสูตร ตัวอย่างเช่น ให้ใส่ชื่อ "กิจจาการ" ใน=VLOOKUP("กิจจาการ",B2:E7,2,FALSE)

สำหรับข้อมูลเพิ่มเติม ให้ดู วิธีแก้ไขข้อผิดพลาด #NAME!

ข้อผิดพลาด #SPILL! ในเซลล์

ข้อผิดพลาด #SPILL! โดยปกติแล้วจะหมายความว่าสูตรของคุณใช้จุดตัดโดยนัยในค่าการค้นหา และใช้ทั้งคอลัมน์เป็นการอ้างอิง ตัวอย่างเช่น =VLOOKUP(A:A,A:C,2,FALSE) คุณสามารถแก้ไขปัญหาได้โดยการยึดการอ้างอิงการค้นหากับตัวใช้ @ ดังนี้: =VLOOKUP(@A:A,A:C,2,FALSE) อีกวิธีหนึ่งคือ คุณสามารถใช้วิธี VLOOKUP แบบดั้งเดิมและอ้างอิงไปยังเซลล์เดียวแทนทั้งคอลัมน์: =VLOOKUP(A2,A:C,2,FALSE)

ให้ทำสิ่งนี้

สาเหตุ

ใช้การอ้างอิงแบบสัมบูรณ์สำหรับ range_lookup

การใช้การอ้างอิงแบบสัมบูรณ์นั้นจะช่วยคุณกรอกสูตร ดังนั้นสูตรจะค้นหาช่วงการค้นหาเดียวกันเสมอ

เรียนรู้วิธีใช้การอ้างอิงเซลล์แบบสัมบูรณ์

ไม่ได้จัดเก็บตัวเลขหรือค่าวันที่เป็นข้อความ

เมื่อค้นหาตัวเลขหรือค่าวันที่ ตรวจสอบให้แน่ใจว่าข้อมูลในคอลัมน์แรกของ table_array ไม่ได้ถูกเก็บเป็นค่าข้อความ มิฉะนั้น ฟังก์ชัน VLOOKUP อาจให้ค่าที่ไม่ถูกต้องหรือค่าที่ไม่คาดคิด

เรียงลำดับคอลัมน์แรก

เรียงลำดับคอลัมน์แรกของ table_array ก่อนจะใช้ VLOOKUP เมื่อ range_lookup เป็น TRUE

ใช้อักขระตัวแทน

ถ้าrange_lookup เป็น FALSE และ llookup_value เป็นข้อความ คุณสามารถใช้อักขระตัวแทน ได้แก่ เครื่องหมายคำถาม (?) และเครื่องหมายดอกจัน (*) ใน lookup_value ได้ เครื่องหมายคำถามใช้แทนอักขระหนึ่งตัว ส่วนดอกจันใช้แทนอักขระหลายตัวติดกัน ถ้าคุณต้องการค้นหาเครื่องหมายคำถามหรือดอกจัน ให้พิมพ์เครื่องหมายตัวหนอน (~) ไว้หน้าอักขระ

ตัวอย่างเช่น =VLOOKUP("Fontan?",B2:E7,2,FALSE) จะค้นหาอินสแตนซ์ทั้งหมดของ คา ญจการโดยอักษรตัวสุดท้ายสามารถแตกต่างกันได้

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

เมื่อค้นหาค่าข้อความในคอลัมน์แรก ตรวจสอบให้แน่ใจว่าข้อมูลในคอลัมน์แรกไม่มีช่องว่างอยู่ข้างหน้า ไม่มีช่องว่างอยู่ข้างหลัง ไม่มีการใช้เครื่องหมายอัญประกาศแบบตรง ( ' หรือ " ) และแบบโค้ง ( ‘ หรือ “) อย่างไม่สม่ำเสมอ หรือไม่มีการใช้อักขระที่ไม่พิมพ์ออกมา ถ้ามีกรณีเหล่านี้ ฟังก์ชัน VLOOKUP อาจให้ค่าที่ไม่คาดคิดได้

เมื่อต้องการรับผลลัพธ์ที่ถูกต้องแม่นยำมากขึ้น ให้ลองใช้ ฟังก์ชัน CLEAN หรือ ฟังก์ชัน TRIM เพื่อเอาช่องว่างที่อยู่ข้างหลังค่าตารางในเซลล์ออก

ต้องการความช่วยเหลือเพิ่มเติมไหม

คุณสามารถสอบถามผู้เชี่ยวชาญใน Excel Tech Community ขอความช่วยเหลือใน Answers community หรือแนะนำฟีเจอร์ใหม่หรือการปรับปรุงบน Excel User Voice

ดูเพิ่มเติม

บัตรอ้างอิงโดยง่าย: ทบทวน VLOOKUP
บัตรอ้างอิงโดยง่าย: เคล็ดลับการแก้ไขปัญหา VLOOKUP
YouTube: วิดีโอ VLOOKUP จาก Microsoft Creators
วิธีการแก้ไขข้อผิดพลาด #VALUE! ในฟังก์ชัน VLOOKUP
วิธีแก้ไขข้อผิดพลาด #N/A ในฟังก์ชัน VLOOKUP
ภาพรวมของสูตรใน Excel
วิธีหลีกเลี่ยงสูตรที่ใช้ไม่ได้
ตรวจหาข้อผิดพลาดในสูตร
ฟังก์ชัน Excel (ตามลำดับตัวอักษร)
ฟังก์ชัน Excel (ตามประเภท)
VLOOKUP (การแสดงตัวอย่างฟรี)

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

×