ADDRESS สร้าง “ที่อยู่ของเซลล์” ออกมาเป็นข้อความ จากเลขแถวและเลขคอลัมน์ที่เราระบุ เช่น =ADDRESS(5,3) ได้ $C$5 ตัวมันเองไม่ได้ดึงค่าในเซลล์ แต่ใช้คู่กับ INDIRECT เพื่อประกอบการอ้างอิงแบบไดนามิก หรือใช้บอกผู้ใช้ว่า “คำตอบอยู่ที่เซลล์ไหน”
🎬 ดูวิดีโอสอน (0 นาที 59 วินาที) บน Excel จริง หรืออ่านขั้นตอนละเอียดด้านล่างได้เลย
รูปแบบของสูตร ADDRESS
=ADDRESS(เลขแถว, เลขคอลัมน์, [รูปแบบล็อก], [แบบ A1], [ชื่อชีต])
| รูปแบบล็อก | ผลลัพธ์ |
| 1 (ค่าเริ่มต้น) | $C$5 ล็อกทั้งคู่ |
| 2 | C$5 ล็อกแถว |
| 3 | $C5 ล็อกคอลัมน์ |
| 4 | C5 ไม่ล็อก |
ตัวอย่างที่ 1: สร้างที่อยู่จากแถวและคอลัมน์

ภาพจริงจาก Excel: ตัวอย่างสูตร ADDRESS (ข้อมูลในภาพเป็นตัวอย่างสมมติ อาจต่างจากตัวเลขในข้อความเล็กน้อย แต่หลักการเหมือนกัน)
ตัวอย่างสูตร =ADDRESS(A2, B2, 4) ได้ผลลัพธ์ C5 / A12
ตัวอย่างที่ 2: หาเซลล์ที่มีค่าสูงสุดอยู่ที่ไหน
ตัวอย่างสูตร =ADDRESS(MATCH(MAX(B2:B6),B2:B6,0)+1, 2) ได้ผลลัพธ์ $B$4
MATCH หาว่ายอดสูงสุด (210) อยู่ลำดับที่เท่าไรในช่วง ได้ 3 บวก 1 เพราะข้อมูลเริ่มแถวที่ 2 แล้ว ADDRESS ประกอบเป็น $B$4
ตัวอย่างที่ 3: ดึงค่าจากที่อยู่ที่ประกอบขึ้นมา
ตัวอย่างสูตร =INDIRECT(ADDRESS(A2, B2)) ได้ผลลัพธ์ 590
ADDRESS สร้างข้อความ $C$3 แล้ว INDIRECT แปลงข้อความนั้นเป็นการอ้างอิงจริง ดึงค่าในเซลล์ C3 ออกมา
เอาเฉพาะตัวอักษรคอลัมน์
=SUBSTITUTE(ADDRESS(1, A2, 4), "1", "") คืนแค่ตัวอักษรคอลัมน์ เช่น ใส่ 28 ได้ AB ใช้ตอนต้องอ้างชื่อคอลัมน์ในข้อความ
ข้อควรรู้
- ผลลัพธ์เป็นข้อความ ไม่ใช่ค่า — ต้องครอบ INDIRECT ถึงจะดึงค่าได้
- งานค้นหาจริงใช้ INDEX ดีกว่า — INDEX + MATCH ดึงค่าได้เลยโดยไม่ต้องผ่าน ADDRESS/INDIRECT ซึ่งเป็นสูตร volatile ที่คำนวณใหม่บ่อยและทำให้ไฟล์ช้า
- ใส่ชื่อชีตได้ — อาร์กิวเมนต์ที่ 5 เช่น
=ADDRESS(1,1,1,TRUE,"ยอดขาย")ได้'ยอดขาย'!$A$1 - ใช้เมื่อจำเป็นต้องได้ “สตริงที่อยู่” จริงๆ เท่านั้น เช่น ทำรายงานที่ระบุตำแหน่งให้ผู้ใช้ หรือประกอบสูตรเป็นข้อความ