
Công thức chung
=ADDRESS(MIN(ROW(range)),MIN(COLUMN(range)))
Tóm lược
Để lấy địa chỉ của ô đầu tiên trong một dải ô, bạn có thể sử dụng hàm ADDRESS cùng với các hàm ROW, COLUMN và MIN. Trong ví dụ được hiển thị, công thức trong F5 là:
=ADDRESS(MIN(ROW(data)),MIN(COLUMN(data)))
trong đó dữ liệu là dải ô được đặt tên B5: D14.
Giải trình
Hàm ADDRESS tạo một tham chiếu dựa trên một số hàng và cột nhất định. Trong trường hợp này, chúng tôi muốn lấy hàng đầu tiên và cột đầu tiên được sử dụng bởi dữ liệu phạm vi được đặt tên (B5: D14).
Để sử dụng hàng đầu tiên, chúng tôi sử dụng hàm ROW cùng với hàm MIN như sau:
MIN(ROW(data))
Vì dữ liệu chứa nhiều hơn một hàng, ROW trả về một mảng số hàng:
(5;6;7;8;9;10;11;12;13;14)
Mảng này chuyển trực tiếp đến hàm MIN, hàm này trả về số nhỏ nhất:
MIN((5;6;7;8;9;10;11;12;13;14)) // returns 5
Để lấy cột đầu tiên, chúng ta sử dụng hàm COLUMN theo cách tương tự:
MIN(COLUMN(data))
Vì dữ liệu chứa ba hàng, COLUMN trả về một mảng có ba số cột:
(2,3,4)
và hàm MIN lại trả về số lớn nhất:
MIN((2,3,4)) // returns 2
Cả hai kết quả đều được trả về trực tiếp cho hàm ADDRESS, hàm này tạo một tham chiếu đến ô ở hàng 5, cột 2:
=ADDRESS(5,2) // returns $B$5
Nếu bạn muốn một địa chỉ tương đối thay vì một tham chiếu tuyệt đối, bạn có thể cung cấp 4 cho đối số thứ ba như sau:
=ADDRESS(MIN(ROW(data)),MIN(COLUMN(data)),4) // returns B5
Chức năng thay thế CELL
Mặc dù nó không rõ ràng, nhưng hàm INDEX trả về một tham chiếu, vì vậy chúng ta có thể sử dụng hàm CELL với INDEX để lấy địa chỉ của ô đầu tiên trong một phạm vi như sau:
=CELL("address",INDEX(data,1,1))
Trong trường hợp này, chúng tôi sử dụng hàm INDEX để nhận tham chiếu đến ô đầu tiên trong phạm vi bằng cách cho INDEX 1 cho số hàng và 1 cho số cột, với dữ liệu cho mảng:
INDEX(data,1,1) // returns reference to B5
INDEX sau đó trả về một tham chiếu đến ô B5 và chúng tôi sử dụng hàm CELL với "địa chỉ", để hiển thị địa chỉ.
Lưu ý: Hàm CELL là một hàm dễ bay hơi có thể gây ra các vấn đề về hiệu suất trong các sổ làm việc lớn hoặc phức tạp.