การค้นหาค่ากับ VLOOKUP, INDEX หรือ MATCH

สิ่งสำคัญ:  บทความนี้เป็นการแปลด้วยเครื่อง โปรดดู ข้อจำกัดความรับผิดชอบ โปรดดูบทความฉบับภาษาอังกฤษ ที่นี่ เพื่อใช้อ้างอิง

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

หมายเหตุ:  ถ้าคุณกำลังมองหา ตัวช่วยสร้างการค้นหา ฟีเจอร์นี้ไม่ได้เป็นส่วนหนึ่งของ Excel อีกต่อไป

ต่อไปเป็นการทบทวนวิธีการใช้ VLOOKUP อย่างรวดเร็ว

=VLOOKUP(B2,C2:E7,3,TRUE)

อาร์กิวเมนต์แรก คือ ส่วนของข้อมูลที่ฟังก์ชันจำเป็นต้องใช้ทำงานซึ่งเป็นค่าที่คุณต้องการค้นหา โดยอาจเป็นการอ้างอิงเซลล์หรือค่าจริง เช่น "smith" หรือ 21,000 อาร์กิวเมนต์ที่สอง คือ ช่วงของเซลล์ที่คุณคิดว่ามีค่าที่คุณต้องการค้นหา ในตัวอย่างนี้ คือ C2-C7 อาร์กิวเมนต์ที่สาม คือ คอลัมน์ในช่วงของเซลล์ดังกล่าวที่มีค่าที่คุณต้องการดู

อาร์กิวเมนต์ที่สี่จะมีหรือไม่ก็ได้ คุณอาจใส่เป็น True หรือ False ถ้าคุณใส่ TRUE หรือปล่อยว่าง ฟังก์ชันจะส่งกลับค่าที่ใกล้เคียงกับค่าที่คุณระบุในอาร์กิวเมนต์แรก ถ้าคุณใส่ FALSE ฟังก์ชันจะค้นหาค่าที่ตรงกับอาร์กิวเมนต์แรกมาให้ กล่าวคือ การปล่อยให้อาร์กิวเมนต์ที่สี่ว่าง หรือใส่ TRUE จะให้ความยืดหยุ่นมากกว่า

ตัวอย่างนี้จะแสดงถึงวิธีการทำงานของฟังก์ชัน เมื่อคุณใส่ค่าในเซลล์ B2 (อาร์กิวเมนต์แรก) VLOOKUP จะค้นหาเซลล์ C2-E7 (อาร์กิวเมนต์ที่สอง) แล้วส่งกลับค่าที่ใกล้เคียงที่สุดจากคอลัมน์ที่สามในช่วง คือ คอลัมน์ E (อาร์กิวเมนต์ที่สาม)

การใช้ฟังก์ชัน VLOOKUP โดยทั่วไป

อาร์กิวเมนต์ที่สี่เป็นช่องว่าง ฟังก์ชันจะส่งกลับค่าที่ใกล้เคียง ถ้าไม่มีค่าส่งกลับมา คุณจะต้องใส่ค่าใดค่าหนึ่งในคอลัมน์ C หรือ D เพื่อให้ได้ผลลัพธ์

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

คุณควรลองทำดู

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

การทำงานของ VLOOKUP

คัดลอกเซลล์ทั้งหมดในตารางนี้ แล้ววางข้อมูลลงในเซลล์ A1 บนเวิร์กชีตเปล่าใน Excel

คำแนะนำ    ก่อนที่คุณจะวางข้อมูลลงใน Excel ให้ตั้งค่าความกว้างคอลัมน์สำหรับคอลัมน์ A ถึง C เป็น 250 พิกเซล แล้วคลิก ตัดข้อความ (แท็บ หน้าแรก กลุ่ม การจัดแนว)

ความหนาแน่น

ความหนืด

อุณหภูมิ

0.457

3.55

500

0.525

3.25

400

0.606

2.93

300

0.675

2.75

250

0.746

2.57

200

0.835

2.38

150

0.946

2.17

100

1.09

1.95

50

1.29

1.71

0

สูตร

คำอธิบาย

ผลลัพธ์

'=VLOOKUP(1,A2:C10,2)

ใช้การค้นหาค่าที่ตรงกันโดยประมาณ ค้นหาค่า 1 ในคอลัมน์ A พบค่าที่สูงสุดซึ่งน้อยกว่าหรือเท่ากับ 1 ในคอลัมน์ A คือ 0.946 แล้วส่งกลับค่าจากคอลัมน์ B ในแถวเดียวกัน

=VLOOKUP(1,A2:C10,2)

'=VLOOKUP(1,A2:C10,3,TRUE)

ใช้การค้นหาค่าที่ตรงกันโดยประมาณ ค้นหาค่า 1 ในคอลัมน์ A พบค่าที่สูงสุดซึ่งน้อยกว่าหรือเท่ากับ 1 ในคอลัมน์ A คือ 0.946 แล้วส่งกลับค่าจากคอลัมน์ C ในแถวเดียวกัน

=VLOOKUP(1,A2:C10,3,TRUE)

'=VLOOKUP(0.7,A2:C10,3,FALSE)

ใช้การค้นหาค่าที่ตรงกันพอดี ค้นหาค่า 0.7 ในคอลัมน์ A เนื่องจากไม่มีค่าที่ตรงกันพอดีในคอลัมน์ A ข้อผิดพลาดจะถูกส่งกลับ

=VLOOKUP(0.7,A2:C10,3,FALSE)

'=VLOOKUP(0.1,A2:C10,2,TRUE)

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

=VLOOKUP(0.1,A2:C10,2,TRUE)

'=VLOOKUP(2,A2:C10,2,TRUE)

ใช้การค้นหาค่าที่ตรงกันโดยประมาณ ค้นหาค่า 2 ในคอลัมน์ A พบค่าที่สูงที่สุดที่น้อยกว่าหรือเท่ากับ 2 ในคอลัมน์ A คือ 1.29 แล้วส่งกลับค่าจากคอลัมน์ B ในแถวเดียวกัน

=VLOOKUP(2,A2:C10,2,TRUE)

การทำงานของ HLOOKUP

คัดลอกเซลล์ทั้งหมดในตารางนี้ แล้ววางข้อมูลลงในเซลล์ A1 บนเวิร์กชีตเปล่าใน Excel

คำแนะนำ    ก่อนที่คุณจะวางข้อมูลลงใน Excel ให้ตั้งค่าความกว้างคอลัมน์สำหรับคอลัมน์ A ถึง C เป็น 250 พิกเซล แล้วคลิก ตัดข้อความ (แท็บ หน้าแรก กลุ่ม การจัดแนว)

เพลา

ตลับลูกปืน

สลักเกลียว

4

4

9

5

7

10

6

8

11

สูตร

คำอธิบาย

ผลลัพธ์

'=HLOOKUP("เพลา", A1:C4, 2, TRUE)

ค้นหา "เพลา" ในแถวที่ 1 และส่งกลับค่าจากแถวที่ 2 ซึ่งอยู่ในคอลัมน์เดียวกัน (คอลัมน์ A)

=HLOOKUP("เพลา", A1:C4,2,TRUE)

'=HLOOKUP("ตลับลูกปืน", A1:C4, 3, FALSE)

ค้นหา "ตลับลูกปืน" ในแถวที่ 1 และส่งกลับค่าจากแถวที่ 3 ซึ่งอยู่ในคอลัมน์เดียวกัน (คอลัมน์ B)

=HLOOKUP("ตลับลูกปืน", A1:C4,3,FALSE)

'=HLOOKUP("B", A1:C4, 3, TRUE)

ค้นหา "B" ในแถวที่ 1 และส่งกลับค่าจากแถวที่ 3 ซึ่งอยู่ในคอลัมน์เดียวกัน เนื่องจากไม่พบค่าที่ตรงกันกับ "B" ดังนั้นจะใช้ค่ามากที่สุดในแถวที่ 1 ที่น้อยกว่า "B" ซึ่งก็คือ "เพลา" ใน คอลัมน์ A

=HLOOKUP("B", A1:C4,3,TRUE)

'=HLOOKUP("สลักเกลียว", A1:C4, 4)

ค้นหา "สลักเกลียว" ในแถวที่ 1 และส่งกลับค่าจากแถวที่ 4 ซึ่งอยู่ในคอลัมน์เดียวกัน (คอลัมน์ C)

=HLOOKUP("สลักเกลียว", A1:C4,4)

'=HLOOKUP(3, {1,2,3;"a","b","c";"d","e","f"}, 2, TRUE)

ค้นหาเลข 3 ในค่าคงที่อาร์เรย์ที่มีสามแถว และส่งกลับค่าจากแถวที่ 2 ในคอลัมน์เดียวกัน (ในกรณีนี้ คือคอลัมน์ที่สาม) มีแถวของค่าอยู่สามแถวในค่าคงที่อาร์เรย์ โดยแต่ละแถวคั่นด้วยเครื่องหมายอัฒภาค (;) เนื่องจากพบ "c" ในแถวที่ 2 และอยู่ในคอลัมน์เดียวกันกับ 3 ดังนั้นจะส่งกลับ "c"

=HLOOKUP(3,{1,2,3;"a","b","c";"d","e","f"},2,TRUE)

การทำงานของ INDEX และ MATCH

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

คัดลอกเซลล์ทั้งหมดในตารางนี้ แล้ววางข้อมูลลงในเซลล์ A1 บนเวิร์กชีตเปล่าใน Excel

คำแนะนำ    ก่อนที่คุณจะวางข้อมูลลงใน Excel ให้ตั้งค่าความกว้างคอลัมน์สำหรับคอลัมน์ A ถึง D เป็น 250 พิกเซล แล้วคลิก ตัดข้อความ (แท็บ หน้าแรก กลุ่ม การจัดแนว)

ใบแจ้งหนี้

เมือง

วันที่ใบแจ้งหนี้

ใบแจ้งหนี้ที่เก่าที่สุดตามชื่อเมือง พร้อมกับวันที่

3115

แอตแลนตา

4/7/12

="แอตแลนตา = "&INDEX($A$2:$C$33,MATCH("แอตแลนตา",$B$2:$B$33,0),1)& ", วันที่ใบแจ้งหนี้: " & TEXT(INDEX($A$2:$C$33,MATCH("แอตแลนตา",$B$2:$B$33,0),3),"m/d/yy")

3137

แอตแลนตา

4/9/12

="ออสติน = "&INDEX($A$2:$C$33,MATCH("ออสติน",$B$2:$B$33,0),1)& ", วันที่ใบแจ้งหนี้: " & TEXT(INDEX($A$2:$C$33,MATCH("ออสติน",$B$2:$B$33,0),3),"m/d/yy")

3154

แอตแลนตา

4/11/12

="ดัลลัส = "&INDEX($A$2:$C$33,MATCH("ดัลลัส",$B$2:$B$33,0),1)& ", วันที่ใบแจ้งหนี้: " & TEXT(INDEX($A$2:$C$33,MATCH("ดัลลัส",$B$2:$B$33,0),3),"m/d/yy")

3191

แอตแลนตา

4/21/12

="นิวออร์ลีนส์ = "&INDEX($A$2:$C$33,MATCH("นิวออร์ลีนส์",$B$2:$B$33,0),1)& ", วันที่ใบแจ้งหนี้: " & TEXT(INDEX($A$2:$C$33,MATCH("นิวออร์ลีนส์",$B$2:$B$33,0),3),"m/d/yy")

3293

แอตแลนตา

4/25/12

="แทมปา = "&INDEX($A$2:$C$33,MATCH("แทมปา",$B$2:$B$33,0),1)& ", วันที่ใบแจ้งหนี้: " & TEXT(INDEX($A$2:$C$33,MATCH("แทมปา",$B$2:$B$33,0),3),"m/d/yy")

3331

แอตแลนตา

4/27/12

3350

แอตแลนตา

4/28/12

3390

แอตแลนตา

5/1/12

3441

แอตแลนตา

5/2/12

3517

แอตแลนตา

5/8/12

3124

ออสติน

4/9/12

3155

ออสติน

4/11/12

3177

ออสติน

4/19/12

3357

ออสติน

4/28/12

3492

ออสติน

5/6/12

3316

ดัลลัส

4/25/12

3346

ดัลลัส

4/28/12

3372

ดัลลัส

5/1/12

3414

ดัลลัส

5/1/12

3451

ดัลลัส

5/2/12

3467

ดัลลัส

5/2/12

3474

ดัลลัส

5/4/12

3490

ดัลลัส

5/5/12

3503

ดัลลัส

5/8/12

3151

นิวออร์ลีนส์

4/9/12

3438

นิวออร์ลีนส์

5/2/12

3471

นิวออร์ลีนส์

5/4/12

3160

แทมปา

4/18/12

3328

แทมปา

4/26/12

3368

แทมปา

4/29/12

3420

แทมปา

5/1/12

3501

แทมปา

5/6/12

ข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชันการค้นหา

ด้านบนของหน้า

หมายเหตุ: ข้อจำกัดความรับผิดชอบของการแปลด้วยเครื่อง: บทความนี้มีการแปลด้วยระบบคอมพิวเตอร์โดยไม่มีการดำเนินการโดยบุคคล Microsoft จัดให้มีการแปลด้วยเครื่องนี้เพื่อช่วยให้ผู้ใช้ที่ไม่ได้พูดภาษาอังกฤษสามารถใช้ประโยชน์จากเนื้อหาเกี่ยวกับผลิตภัณฑ์ บริการและเทคโนโลยีของ Microsoft เนื่องจากบทความมีการแปลด้วยเครื่อง อาจมีข้อผิดพลาดด้านคำศัพท์ ไวยากรณ์หรือรูปประโยค

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

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

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×