
เพื่อรับที่อยู่เต็มของ a ชื่อ range ด้วยสูตร Excel คุณสามารถใช้ฟังก์ชัน ADDRESS ร่วมกับฟังก์ชัน ROW และ COLUMN ในตัวอย่างที่แสดง สูตรใน G5 คือ:
= ADDRESS ( ROW (nr), COLUMN (nr))&':'& ADDRESS ( ROW (nr)+ ROWS (nr)-1, COLUMN (nr)+ COLUMNS (nr)-1)
โดยที่ 'data' คือช่วงที่มีชื่อ B5:D10
คำอธิบายแก่นของสูตรนี้คือฟังก์ชัน ADDRESS ซึ่งใช้เพื่อส่งคืนที่อยู่เซลล์ตามแถวและคอลัมน์ที่กำหนด น่าเสียดายที่สูตรค่อนข้างซับซ้อนเนื่องจากเราต้องใช้ ADDRESS สองครั้ง: หนึ่งครั้งเพื่อรับที่อยู่ของเซลล์แรกในช่วง และอีกครั้งเพื่อรับที่อยู่ของเซลล์สุดท้ายในช่วง ผลลัพธ์ทั้งสองจะถูกรวมเข้าด้วยกันและตัวดำเนินการช่วง (:) และช่วงเต็มจะถูกส่งกลับเป็นข้อความ
เพื่อให้ได้เซลล์แรกในช่วง เราใช้นิพจน์นี้:
= ADDRESS ( ROW (data), COLUMN (data),4)&':'& ADDRESS ( ROW (data)+ ROWS (data)-1, COLUMN (data)+ COLUMNS (data)-1,4)
ROW ส่งคืนหมายเลขแถวแรกที่เชื่อมโยงกับช่วง 5*
COLUMN ส่งคืนหมายเลขคอลัมน์แรกที่เชื่อมโยงกับช่วง 2
เมื่อตั้งค่า abs_num เป็น 4 (สัมพัทธ์) ADDRESS จะส่งกลับข้อความ 'B5'
วิธีการลงจุดการกระจายใน excel
= ADDRESS ( ROW (data), COLUMN (data))
เพื่อให้ได้เซลล์สุดท้ายในช่วง เราใช้นิพจน์นี้:
= ADDRESS (5,2,4) // returns 'B5'
ดู หน้านี้ สำหรับคำอธิบายโดยละเอียด
โดยพื้นฐานแล้ว เราทำตามแนวคิดเดียวกันกับข้างต้น โดยเพิ่มคณิตศาสตร์อย่างง่ายในการคำนวณแถวสุดท้ายและคอลัมน์สุดท้ายของช่วง ซึ่งป้อนเหมือนเดิมใน ADDRESS โดยตั้งค่า abs_num เป็น 4 ซึ่งลดเป็นนิพจน์ต่อไปนี้ ซึ่งจะส่งคืนข้อความ ' D10':
= ADDRESS ( ROW (data)+ ROWS (data)-1, COLUMN (data)+ COLUMNS (data)-1,4)
ผลลัพธ์ทั้งสองจะถูกเชื่อมด้วยเครื่องหมายทวิภาคเพื่อรับที่อยู่ช่วงสุดท้ายเป็นข้อความ:
= ADDRESS (10,4,4) // returns 'D10'
ช่วงที่ตั้งชื่อจากเซลล์อื่น
หากต้องการรับที่อยู่สำหรับช่วงที่มีชื่อในเซลล์อื่น คุณจะต้องใช้ฟังก์ชันทางอ้อม ตัวอย่างเช่น ในการรับที่อยู่ของชื่อใน A1 คุณจะใช้:
='B5'&':'&'D10' ='B5:D10
ตั้งค่า abs_num เป็น 4 ภายใน ADDRESS เพื่อรับที่อยู่สัมพันธ์
* ที่จริงแล้ว ในทุกกรณีที่เราใช้ ROW และ COLUMN กับช่วงที่มีชื่อหลายเซลล์ เราจะคืนค่าอาร์เรย์ของตัวเลขแทนที่จะเป็นค่าเดียว อย่างไรก็ตาม เนื่องจากเราไม่ได้ใช้สูตรอาร์เรย์ การประมวลผลจึงจำกัดเฉพาะรายการแรกในอาร์เรย์เหล่านี้
ผู้เขียน Dave Bruns