HLOOKUP
อัปเดต 24 ก.ย. 2569 · ตรวจ syntax และเวอร์ชันกับเอกสารของ Microsoft · ผลในตัวอย่างตรวจด้วยเครื่องมือคำนวณ 2 ชุด
HLOOKUP คืออะไร
ค้นหาค่าในแถวบนสุดของตาราง แล้วดึงค่าจากแถวที่ระบุในคอลัมน์เดียวกัน ใช้กับตารางที่หัวข้อเรียงเป็นแนวนอน
ใช้เมื่อไหร่
- ดึงยอดของเดือนหรือไตรมาสที่เลือก จากตารางที่หัวข้อเรียงเป็นแนวนอน
- หาโบนัสหรืออัตราจากตารางขั้นบันไดที่เรียงเป็นแถว
- ค้นสองทางในตารางสรุป เช่น ภาค × ไตรมาส ร่วมกับ MATCH
รูปแบบสูตร
Argument แต่ละตัว
ชี้ที่ argument ในรูปแบบสูตรด้านบนเพื่อไฮไลต์แถวนั้น
| Argument | จำเป็นไหม | ความหมาย |
|---|---|---|
| lookup_value | จำเป็น | ค่าที่ต้องการค้นหาในแถวแรกของตาราง |
| table_array | จำเป็น | ตารางข้อมูล แถวแรกต้องเป็นแถวที่ใช้ค้นหา |
| row_index_num | จำเป็น | ลำดับแถวในตารางที่ต้องการดึง นับแถวแรกเป็น 1 |
| [range_lookup] | ไม่บังคับ | FALSE = ตรงทุกตัว · TRUE หรือไม่ใส่ = ค่าใกล้เคียง (แถวแรกต้องเรียงจากน้อยไปมาก) |
ลองเลย: ตัวอย่างที่เปลี่ยนค่าได้
ข้อมูลชุดเดียวกับไฟล์ฝึก เปลี่ยนค่าในช่องกรอก หรือคลิกตัวเลขในตารางเพื่อแก้ แล้วดูผลลัพธ์เปลี่ยนทันที กดถัดไปเพื่อดูว่า Excel คิดทีละขั้นอย่างไร สีของช่วงในตารางตรงกับสีในสูตร
ค้นชื่อไตรมาสใน I4 ที่แถวหัวตาราง (แถว 4) แล้วดึงค่าจากแถวที่ระบุในคอลัมน์เดียวกัน
| แถว | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 4 | ภูมิภาค | ไตรมาส 1 | ไตรมาส 2 | ไตรมาส 3 | ไตรมาส 4 | ||
| 5 | กลาง | 47,908,489 | 39,006,363 | 40,634,131 | 40,019,537 | ||
| 6 | เหนือ | 10,591,710 | 8,796,328 | 14,231,481 | 16,411,520 | ||
| 7 | ตะวันออกเฉียงเหนือ | 19,149,349 | 27,574,271 | 20,534,352 | 28,337,547 | ||
| 8 | ตะวันออก | 19,958,847 | 18,782,796 | 17,070,225 | 20,390,443 | ||
| 9 | ใต้ | 11,166,323 | 20,785,957 | 8,599,520 | 20,939,128 | ||
| 10 | |||||||
| 11 | |||||||
| 12 | |||||||
| 13 | |||||||
| 14 | |||||||
| 15 | |||||||
| 16 | |||||||
| 17 | |||||||
| 18 | |||||||
| 19 |
ขั้นตอนการคำนวณ (4)
- อ่านสูตร: หา I4 ในแถวแรกของ A4:E9 แล้วดึงค่าจากแถวที่ 2 ในคอลัมน์เดียวกัน
- ลองเลือกไตรมาสอื่นจาก Dropdown แล้วดูว่าคอลัมน์ที่ HLOOKUP ใช้เปลี่ยนตาม
- row_index_num นับแถวแรกของ table_array (แถวหัวตาราง) เป็น 1 ไม่ใช่เลขแถวของชีต ภาคกลางจึงเป็นแถวที่ 2
ตัวอย่างทั้งหมด 4 แบบ
- 1ดึงยอดขายของไตรมาสที่เลือก · ค้นชื่อไตรมาสใน I4 ที่แถวหัวตาราง (แถว 4) แล้วดึงค่าจากแถวที่ระบุในคอลัมน์เดียวกัน
- 2ค้นสองทาง: ใช้ MATCH หาเลขแถวส่งให้ HLOOKUP · MATCH หาว่าภาคใน I4 อยู่แถวที่เท่าไรของตาราง แล้วส่งเลขนั้นเป็น row_index_num
- 3โบนัสขั้นบันไดจากตารางแนวนอน (TRUE) · แถว 5 คือยอดขายขั้นต่ำของแต่ละขั้น เรียงจากน้อยไปมาก HLOOKUP แบบ TRUE เลือกขั้นสูงสุดที่ยอดขายไปถึง
- 4คำนวณโบนัสทั้งทีมจากตารางแนวนอน · คอลัมน์ F ใช้ HLOOKUP กับตารางโบนัสด้านล่าง โดยล็อกช่วงตารางด้วย $ ก่อนลากสูตรลง
ข้อผิดพลาดที่พบบ่อย
เคล็ดลับจากห้องเรียน
ใช้กับ Excel ของคุณได้ไหม
| เวอร์ชัน | Excel 2016 | Excel 2019 | Excel 2021 | Excel 2024 | Microsoft 365 |
|---|---|---|---|---|---|
| HLOOKUP |
HLOOKUP ใช้ได้ทุกเวอร์ชันที่ยังใช้กันอยู่ จึงไม่ต้องมีสูตรทางเลือก
เลือกฟังก์ชันให้ถูกงาน
| ฟังก์ชัน | ใช้เมื่อ | ตัวอย่าง |
|---|---|---|
| HLOOKUP | หัวข้อเรียงแนวนอน ค้นในแถวแรกแล้วดึงแถวที่ระบุ | =HLOOKUP(I4,A4:E9,2,FALSE) |
| VLOOKUP | หัวข้อเรียงแนวตั้ง ค้นในคอลัมน์แรกแล้วดึงคอลัมน์ที่ระบุ | =VLOOKUP(I4,A5:E14,4,FALSE) |
| XLOOKUP | ค้นได้ทั้งแนวตั้งและแนวนอน ไม่ต้องนับแถว (2021 ขึ้นไป) | =XLOOKUP(I4,B4:E4,B5:E5) |
| INDEX + MATCH | ค้นสองทาง ทุกเวอร์ชัน | =INDEX(B5:E9,MATCH(I4,A5:A9,0),MATCH(I5,B4:E4,0)) |
ใน Power BI ใช้อะไร
ข้อมูลในโมเดลเป็นแถวเสมอ ใช้ RELATED หรือ LOOKUPVALUE ค้นตามคอลัมน์
ไฟล์ฝึก HLOOKUP
9Expert-HLOOKUP-Practice-v1.2.xlsx
โจทย์ในชีตแบบฝึกหัด
- ข้อ 1ยอดของไตรมาสในช่อง C7 ของภาคเหนือ
- ข้อ 2ยอดของไตรมาสในช่อง C8 ของภาคใต้
- ข้อ 3ยอดของไตรมาสในช่อง C9 ของภาคตะวันออก
- ข้อ 4ยอดไตรมาส 3 ของภาคในช่อง C10 โดยใช้ MATCH หาเลขแถว
- ข้อ 5โบนัสของยอดขายในช่อง C11 จากตารางโบนัสแนวนอน (H14:L15)
วิดีโอประกอบ
ในเว็บจริงจะฝังคลิปพร้อมตั้งเวลาเริ่มตรงหัวข้อนี้ ในต้นแบบเปิดผลค้นหาในช่องแทน
เปิดใน YouTubeแบบทดสอบ 3 ข้อ
1. =HLOOKUP("ไตรมาส 2",A4:E9,3,FALSE) ดึงค่าจากที่ไหน
row_index_num นับแถวแรกของ table_array เป็น 1 จึงได้แถวที่ 3 ของตาราง ในคอลัมน์ที่เจอคำว่า ไตรมาส 2
2. ถ้า row_index_num มากกว่าจำนวนแถวของ table_array จะได้อะไร
Microsoft ระบุว่า HLOOKUP คืน #REF! เมื่อ row_index_num มากกว่าจำนวนแถวของตาราง และคืน #VALUE! เมื่อน้อยกว่า 1
3. ตารางโบนัสแนวนอนที่แถวแรกเป็นยอดขายขั้นต่ำ เรียงจากน้อยไปมาก ควรใช้ range_lookup แบบใด
TRUE หาค่าที่มากที่สุดที่ไม่เกินยอดขาย จึงได้ขั้นที่ยอดไปถึง ส่วน FALSE หาได้เฉพาะยอดที่ตรงกับขั้นพอดี
ไปต่อ
ต่อยอดใน Microsoft Excel Advanced: สูตรสรุปผลแบบมีเงื่อนไข สูตรสืบค้นข้อมูล สูตรใหม่ใน Microsoft 365 และการจัดการ Error (2 วัน)