สารบัญ
บทช่วยสอนจะแนะนำโดยย่อเกี่ยวกับไวยากรณ์ของฟังก์ชัน ADDRESS และแสดงวิธีใช้เพื่อส่งคืนที่อยู่เซลล์ของ Excel และอื่นๆ อีกมากมาย
ในการสร้างการอ้างอิงเซลล์ใน Excel คุณ สามารถพิมพ์พิกัดคอลัมน์และแถวได้เอง หรือคุณสามารถรับที่อยู่ของเซลล์ Excel ได้จากหมายเลขแถวและคอลัมน์ที่ระบุในฟังก์ชัน ADDRESS เกือบจะไม่มีจุดหมายในตัวเอง เมื่อใช้ร่วมกับฟังก์ชันอื่นๆ เทคนิคนี้สามารถเป็นทางออกเดียวในสถานการณ์ที่ไม่สามารถอ้างถึงเซลล์ได้โดยตรง
ฟังก์ชัน ADDRESS ของ Excel - ไวยากรณ์และ การใช้งานขั้นพื้นฐาน
ฟังก์ชัน ADDRESS ออกแบบมาเพื่อรับที่อยู่เซลล์ใน Excel ตามหมายเลขแถวและคอลัมน์ที่ระบุ ที่อยู่เซลล์จะถูกส่งกลับเป็นสตริงข้อความ ไม่ใช่การอ้างอิงจริง
ฟังก์ชันนี้พร้อมใช้งานใน Excel ทุกรุ่นสำหรับ Microsoft 365 - Excel 2007
ไวยากรณ์ของฟังก์ชัน ADDRESS คือ ดังนี้:
ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text])จำเป็นต้องมีอาร์กิวเมนต์สองรายการแรก:
row_num - แถว จำนวนที่จะใช้ในการอ้างอิงเซลล์
column_num - หมายเลขคอลัมน์สำหรับสร้างการอ้างอิงเซลล์
อาร์กิวเมนต์สามตัวสุดท้าย ซึ่งระบุรูปแบบการอ้างอิงเซลล์ ได้แก่ ไม่บังคับ:
abs_num - ประเภทการอ้างอิง สัมบูรณ์หรือสัมพัทธ์ สามารถใช้ตัวเลขใด ๆ ด้านล่าง; ค่าเริ่มต้นเป็นแบบสัมบูรณ์
- 1 หรือละเว้น -การอ้างอิงเซลล์สัมบูรณ์ เช่น $A$1
- 2 - การอ้างอิงแบบผสม: คอลัมน์สัมพัทธ์และแถวสัมบูรณ์ เช่น A$1
- 3 - การอ้างอิงแบบผสม: คอลัมน์สัมบูรณ์และแถวสัมพัทธ์ เช่น $A1
- 4 - การอ้างอิงเซลล์สัมพัทธ์ เช่น A1
a1 - สไตล์การอ้างอิง A1 หรือ R1C1 หากละเว้น ระบบจะใช้สไตล์ A1 เริ่มต้น
- 1 หรือ TRUE หรือละเว้น - ส่งคืนที่อยู่เซลล์ในรูปแบบการอ้างอิง A1 โดยที่คอลัมน์เป็นตัวอักษรและแถวเป็นตัวเลข
- 0 หรือ FALSE - ส่งกลับที่อยู่ของเซลล์ในรูปแบบการอ้างอิง R1C1 โดยที่แถวและคอลัมน์แสดงด้วยตัวเลข
sheet_text - ชื่อของเวิร์กชีตที่จะรวมไว้ในการอ้างอิงภายนอก ควรระบุชื่อแผ่นงานเป็นสตริงข้อความและใส่เครื่องหมายอัญประกาศ เช่น "แผ่นที่ 2" ถ้าไม่ระบุ จะไม่มีการใช้ชื่อแผ่นงาน และที่อยู่จะมีค่าเริ่มต้นเป็นแผ่นงานปัจจุบัน
ตัวอย่าง:
=ADDRESS(1,1)
- ส่งกลับที่อยู่ของเซลล์แรก (เช่น เซลล์ที่จุดตัดของ แถวแรกและคอลัมน์แรก) เป็นการอ้างอิงเซลล์สัมบูรณ์ $A$1
=ADDRESS(1,1,4)
- ส่งกลับที่อยู่ของเซลล์แรกเป็นการอ้างอิงเซลล์สัมพัทธ์ A1
ในตารางต่อไปนี้ คุณจะพบประเภทการอ้างอิงอีกสองสามประเภทที่สูตร ADDRESS ส่งคืนได้
สูตร | ผลลัพธ์ | คำอธิบาย |
=ADDRESS(1,2) | $B$1 | เซลล์สัมบูรณ์การอ้างอิง |
=ADDRESS(1,2,4) | B1 | การอ้างอิงเซลล์สัมพัทธ์ |
=ADDRESS(1,2,2) | B$1 | คอลัมน์สัมพัทธ์และแถวสัมบูรณ์ |
=ADDRESS(1,2,3) | $B1 | คอลัมน์สัมบูรณ์และแถวสัมพัทธ์ |
=ADDRESS(1,2,1,FALSE) | R1C2 | การอ้างอิงแบบสัมบูรณ์ในรูปแบบ R1C1 |
=ADDRESS(1,2,4,FALSE) | R[1]C[2] | การอ้างอิงสัมพัทธ์ในรูปแบบ R1C1 |
=ADDRESS(1,2,1,,"Sheet2") | Sheet2!$B$1 | การอ้างอิงสัมบูรณ์ไปยังชีตอื่น |
=ADDRESS(1,2,4,,"Sheet2") | Sheet2!B1 | การอ้างอิงสัมพัทธ์ ไปยังชีตอื่น |
วิธีใช้ฟังก์ชัน ADDRESS ใน Excel - ตัวอย่างสูตร
ตัวอย่างด้านล่างแสดงวิธีใช้ฟังก์ชัน ADDRESS ภายในสูตรที่ใหญ่กว่าเพื่อให้สำเร็จมากขึ้น งานยาก
ส่งกลับค่าเซลล์ในแถวและคอลัมน์ที่กำหนด
หากเป้าหมายของคุณคือการรับค่าจากเซลล์ใดเซลล์หนึ่งตามหมายเลขแถวและคอลัมน์ ให้ใช้ ADDRESS fun การดำเนินการร่วมกับ INDIRECT:
INDIRECT(ADDRESS(row_num, column_num))ฟังก์ชัน ADDRESS จะแสดงที่อยู่ของเซลล์เป็นข้อความ ฟังก์ชัน INDIRECT เปลี่ยนข้อความนั้นเป็นข้อมูลอ้างอิงปกติและส่งกลับค่าจากเซลล์ที่เกี่ยวข้อง
ตัวอย่างเช่น หากต้องการรับค่าเซลล์ตามหมายเลขแถวใน E1 และหมายเลขคอลัมน์ใน E2 ให้ใช้สูตรนี้ :
=INDIRECT(ADDRESS(E1,E2))
รับที่อยู่ของเซลล์ที่มีค่าสูงสุดหรือต่ำสุด
ในตัวอย่างนี้ อันดับแรก เราจะค้นหาค่าสูงสุดและต่ำสุดในช่วง B2:B7 โดยใช้ฟังก์ชัน MAX และ MIN และส่งค่าเหล่านั้นไปยังเซลล์พิเศษ:
เซลล์ E2: =MAX(B2:B7)
เซลล์ F2: =MIN(B2:B7)
จากนั้น เราจะใช้ ADDRESS ร่วมกับฟังก์ชัน MATCH เพื่อ รับที่อยู่ของเซลล์
เซลล์ที่มีค่าสูงสุด:
=ADDRESS(MATCH(E2,B:B,0), COLUMN(B2))
เซลล์ที่มีค่าต่ำสุด:
=ADDRESS(MATCH(F2,B:B,0), COLUMN(B2))
ในกรณีที่คุณไม่ต้องการค่าสูงสุดและต่ำสุดในเซลล์ที่แยกกัน คุณสามารถซ้อนฟังก์ชัน MAX/MIN ในอาร์กิวเมนต์แรกของ MATCH ตัวอย่างเช่น:
เซลล์ที่มีค่าสูงสุด:
=ADDRESS(MATCH(MAX(B2:B7),B:B,0), COLUMN(B2))
เซลล์ที่มีค่าต่ำสุด:
=ADDRESS(MATCH(MIN(B2:B7),B:B,0), COLUMN(B2))
สูตรเหล่านี้เป็นอย่างไร ทำงาน
หากต้องการค้นหาหมายเลขแถว ให้ใช้ฟังก์ชัน MATCH(lookup_value, lookup_array, [match_type]) ที่ส่งคืนตำแหน่งสัมพัทธ์ของ lookup_value ใน lookup_array ในสูตรของเรา ค่าการค้นหาคือตัวเลขที่ส่งคืนโดยฟังก์ชัน MAX หรือ MIN และอาร์เรย์การค้นหาคือทั้งคอลัมน์ ดังนั้น ตำแหน่งสัมพัทธ์ของค่าการค้นหาในอาร์เรย์จะตรงกับหมายเลขแถวในแผ่นงานทุกประการ
หากต้องการค้นหาหมายเลขคอลัมน์ ให้ใช้ฟังก์ชัน COLUM แน่นอน ไม่มีอะไรป้องกันคุณจากการพิมพ์ตัวเลขโดยตรงในสูตร แต่ COLUMN ช่วยลดปัญหาในการนับด้วยตนเองในกรณีที่คอลัมน์เป้าหมายอยู่ตรงกลางของแผ่นงาน
รับตัวอักษรประจำคอลัมน์จากหมายเลขคอลัมน์
หากต้องการเปลี่ยนตัวเลขให้เป็นตัวอักษรประจำคอลัมน์ ให้ใช้ฟังก์ชัน ADDRESS ภายใน SUBSTITUTE:
SUBSTITUTE(ADDRESS(1, column_number,4),"1 ","")ตามตัวอย่าง ลองหาตัวอักษรประจำคอลัมน์ที่ตรงกับตัวเลขใน A2:
=SUBSTITUTE(ADDRESS(1,A2,4),"1","")
เมื่อดูผลลัพธ์ด้านล่าง เราสามารถพูดได้ว่าคอลัมน์แรก บนแผ่นงานคือ A ซึ่งชัดเจน; คอลัมน์ที่ 10 คือ J คอลัมน์ที่ 50 คือ AX และคอลัมน์ที่ 100 คือ CV:
วิธีการทำงานของสูตรนี้
สำหรับผู้เริ่มต้น ให้ตั้งค่า ฟังก์ชัน ADDRESS เพื่อส่งกลับการอ้างอิงสัมพัทธ์ไปยังเซลล์แรกในคอลัมน์เป้าหมาย:
- สำหรับหมายเลขแถว ให้ใช้ 1
- สำหรับหมายเลขคอลัมน์ ระบุการอ้างอิงไปยังเซลล์ มีตัวเลข A2 ในตัวอย่างของเรา
- สำหรับอาร์กิวเมนต์ abs_num ให้ป้อน 4
ผลลัพธ์ ADDRESS(1,A2,4) จะส่งกลับ A1
หากต้องการกำจัดพิกัดแถว ให้รวมสูตรข้างต้นในฟังก์ชัน SUBSTITUTE และแทนที่ "1" ด้วยสตริงว่าง ("") เสร็จแล้ว!
รับที่อยู่ของช่วงที่มีชื่อ
หากต้องการค้นหาที่อยู่ของช่วงที่มีชื่อใน Excel ก่อนอื่นคุณจะต้องได้รับการอ้างอิงเซลล์แรกและเซลล์สุดท้าย แล้วจึงรวมเข้าด้วยกัน . ซึ่งทำงานแตกต่างกันเล็กน้อยใน Excel แบบพรีไดนามิก (ปี 2019 และเก่ากว่า) และ Dynamic Array Excel (Office 365 และ Excel 2021) ตัวอย่างด้านล่างใช้สำหรับ Excel 2019 - Excel 2007 คำแนะนำสำหรับ Excel 365 และ Excel 2021 คือที่นี่
วิธีรับที่อยู่ของเซลล์แรกในช่วง
หากต้องการส่งกลับการอ้างอิงไปยังเซลล์แรกในช่วงที่มีชื่อ ให้ใช้สูตรทั่วไปนี้:
ADDRESS(ROW( ช่วง),COLUMN( ช่วง))สมมติว่าช่วงชื่อ "การขาย" สูตรจริงจะเป็นดังนี้:
=ADDRESS(ROW(Sales), COLUMN(Sales))
และส่งกลับที่อยู่ของเซลล์ซ้ายบนในช่วง:
ในสูตรนี้ ฟังก์ชัน ROW และ COLUMN จะส่งคืนอาร์เรย์ของแถวและหมายเลขคอลัมน์ทั้งหมดใน ช่วงตามลำดับ ฟังก์ชัน ADDRESS จะสร้างอาร์เรย์ของที่อยู่เซลล์ตามตัวเลขเหล่านี้ แต่เนื่องจากสูตรถูกป้อนในเซลล์เดียว จึงแสดงเฉพาะรายการแรกของอาร์เรย์ซึ่งสอดคล้องกับเซลล์แรกในช่วง
วิธีรับที่อยู่ของเซลล์สุดท้ายในช่วง<27
หากต้องการค้นหาที่อยู่ของเซลล์สุดท้ายในช่วงที่มีชื่อ ให้ใช้สูตรทั่วไปนี้:
ADDRESS(ROW( range )+ROWS( range )-1 ,COLUMN( ช่วง )+COLUMNS( ช่วง )-1)นำไปใช้กับช่วงของเราที่ชื่อ "การขาย" สูตรจะใช้รูปแบบต่อไปนี้:
=ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1)
และส่งกลับการอ้างอิงไปยังเซลล์ด้านล่างขวาของช่วง:
คราวนี้ เราต้องการการคำนวณที่ซับซ้อนขึ้นอีกเล็กน้อยเพื่อคำนวณแถว ตัวเลข. เช่นเดียวกับในตัวอย่างก่อนหน้านี้ ฟังก์ชัน ROW ให้อาร์เรย์ของหมายเลขแถวทั้งหมดในช่วง {4;5;6;7} ในกรณีของเรา เราต้อง "เปลี่ยน" ตัวเลขเหล่านี้ตามจำนวนแถวทั้งหมด ลบ 1รายการแรกในอาร์เรย์จะกลายเป็นหมายเลขแถวสุดท้าย ในการหาจำนวนแถวทั้งหมด เราใช้ฟังก์ชัน ROWS และลบ 1 จากผลลัพธ์: (4-1=3) จากนั้น เราเพิ่ม 3 ในแต่ละองค์ประกอบของอาร์เรย์เริ่มต้นเพื่อทำการเปลี่ยนที่จำเป็น: {4;5;6;7} + 3 = {7;8;9;10}.
หมายเลขคอลัมน์คือ คำนวณด้วยวิธีที่คล้ายกัน: {2,3,4}+3-1 = {4,5,6}
จากอาร์เรย์ของแถวและหมายเลขคอลัมน์ด้านบน ฟังก์ชัน ADDRESS จะรวบรวมอาร์เรย์ของที่อยู่ของเซลล์ แต่ส่งคืนเฉพาะเซลล์แรกที่ตรงกับเซลล์สุดท้ายในช่วง
ผลลัพธ์เดียวกันนี้สามารถทำได้โดยการเลือกค่าสูงสุดจากอาร์เรย์ของแถวและหมายเลขคอลัมน์ อย่างไรก็ตาม วิธีนี้ใช้ได้กับสูตรอาร์เรย์เท่านั้น ซึ่งต้องกด Ctrl + Shift + Enter เพื่อให้สมบูรณ์:
=ADDRESS(MAX(ROW(Sales)), MAX(COLUMN(Sales)))
วิธีรับที่อยู่แบบเต็มของช่วงที่มีชื่อ
หากต้องการส่งกลับที่อยู่ที่สมบูรณ์ของช่วงที่ตั้งชื่อ คุณเพียงแค่เชื่อมสูตรทั้งสองจากตัวอย่างก่อนหน้าและใส่ตัวดำเนินการช่วง (:) ไว้ระหว่าง
ADDRESS(ROW( range ) , COLUMN( ช่วง )) & ":" & ADDRESS(ROW( ช่วง ) + ROWS( ช่วง )-1, คอลัมน์( ช่วง ) + คอลัมน์( ช่วง )-1)เพื่อให้ใช้ได้กับชุดข้อมูลตัวอย่างของเรา เราแทนที่ "ช่วง" ทั่วไปด้วยชื่อช่วงจริง "การขาย":
=ADDRESS(ROW(Sales), COLUMN(Sales)) & ":" & ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1)
และรับที่อยู่ช่วงที่สมบูรณ์เป็น สัมบูรณ์ อ้างอิง $B$4:$D$7:
หากต้องการคืนช่วงที่อยู่เป็นการอ้างอิง ญาติ (ไม่มีเครื่องหมาย $ เช่น B4:D7) ตั้งค่าอาร์กิวเมนต์ abs_num ในฟังก์ชัน ADDRESS ทั้งสองเป็น 4:
=ADDRESS(ROW(Sales), COLUMN(Sales), 4) & ":" & ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1, 4)
โดยปกติแล้ว สามารถทำการเปลี่ยนแปลงเดียวกันในแต่ละสูตรสำหรับเซลล์แรกและเซลล์สุดท้าย และผลลัพธ์จะมีลักษณะดังนี้:
วิธีรับที่อยู่ของช่วงที่มีชื่อใน Excel 365 และ Excel 2021
ไม่เหมือนกับพฤติกรรม "หนึ่งสูตร - หนึ่งเซลล์" แบบเดิมในเวอร์ชันเก่า ใน Excel ใหม่ สูตรใดๆ ที่อาจส่งคืนค่าได้หลายค่าจะทำสิ่งนี้โดยอัตโนมัติ ลักษณะการทำงานดังกล่าวเรียกว่าการรั่วไหล
ตัวอย่างเช่น แทนที่จะส่งคืนที่อยู่ของเซลล์แรก สูตรด้านล่างจะแสดงที่อยู่ของแต่ละเซลล์และทุกเซลล์ในช่วงที่มีชื่อ:
=ADDRESS(ROW(Sales), COLUMN(Sales))
<3
หากต้องการรับที่อยู่ของ เซลล์แรก เท่านั้น คุณต้องเปิดใช้งานการตัดกันโดยปริยาย ซึ่งจะถูกเรียกใช้โดยค่าเริ่มต้นใน Excel 2019 และเก่ากว่า สำหรับสิ่งนี้ ให้ใส่สัญลักษณ์ @ (ตัวดำเนินการตัดโดยปริยาย) ก่อนชื่อช่วง:
=ADDRESS(@ROW(Sales), @COLUMN(Sales))
ในลักษณะที่คล้ายกัน คุณสามารถแก้ไขสูตรอื่นๆ ได้
หากต้องการรับ เซลล์สุดท้าย ในช่วง:
=ADDRESS(@ROW(Sales) + ROWS(Sales)-1, @COLUMN(Sales) + COLUMNS(Sales)-1)
หากต้องการรับ ที่อยู่ของช่วงที่มีชื่อ :
=ADDRESS(@ROW(Sales), @COLUMN(Sales)) & ":" & ADDRESS(@ROW(Sales) + ROWS(Sales)-1, @COLUMN(Sales) + COLUMNS(Sales)-1)
ภาพหน้าจอด้านล่างแสดงผลลัพธ์:
เคล็ดลับ เมื่อเปิดแผ่นงานด้วยสูตรที่สร้างขึ้นในเวอร์ชันเก่าในไดนามิกอาร์เรย์ Excel ตัวดำเนินการทางแยกโดยปริยายจะถูกแทรกโดย Excel โดยอัตโนมัติ
นั่นคือวิธีที่คุณส่งคืนที่อยู่เซลล์ใน Excel หากต้องการดูสูตรทั้งหมดที่กล่าวถึงในบทช่วยสอนนี้อย่างใกล้ชิด คุณสามารถดาวน์โหลดสมุดงานตัวอย่างด้านล่าง ฉันขอขอบคุณสำหรับการอ่านและหวังว่าจะได้พบคุณในบล็อกของเราในสัปดาห์หน้า!
สมุดงานแบบฝึกหัดสำหรับการดาวน์โหลด
ฟังก์ชัน Excel ADDRESS - ตัวอย่างสูตร (ไฟล์ .xlsx)