Excel cho phép bạn dễ dàng xem vị trí của ô hiện được chọn bằng cách kiểm tra nội dung của Hộp Tên, ở bên trái Thanh Công thức. Điều này là tốt và tốt, nhưng đôi khi bạn muốn có địa chỉ của một ô thực sự trong một ô. Ví dụ: bạn có thể muốn ô A1 chứa địa chỉ của ô hiện được chọn.

Điều này có nghĩa là nếu ô E4 được chọn, thì A1 sẽ chứa địa chỉ của nó, hoặc $ E $ 4. Nếu sau đó bạn nhấn phím mũi tên phải, thì nội dung của A1 sẽ thay đổi thành $ F $ 4.

Để trả về địa chỉ của ô hiện được chọn, bạn phải sử dụng macro. Macro sau sẽ trả về giá trị của ô được chọn tại thời điểm nó được chạy:

Public Function CurrentCell() As String     Application.Volatile     CurrentCell = ActiveCell.Address End Function

Việc bao gồm phương thức Application.Volatile có nghĩa là mỗi khi trang tính được tính toán lại, hàm (macro) này lại được chạy. Để sử dụng macro, bạn có thể đặt mã sau vào bất kỳ ô nào mong muốn, bao gồm A1:

=CurrentCell

Bạn nên lưu ý rằng macro này không dẫn đến nội dung của A1 thay đổi mỗi khi bạn di chuyển đến một ô khác. Một lần nữa, nội dung của A1 sẽ chỉ thay đổi khi sổ làm việc được tính toán lại, bằng cách thay đổi một cái gì đó trong trang tính hoặc bằng cách nhấn F9.

Thay vào đó, nếu bạn cần có phiên bản “thời gian thực” tự động cập nhật A1 khi ô đã chọn bị thay đổi, bạn có thể làm theo các bước sau:

  1. Hiển thị VBA Editor bằng cách nhấn Alt + F11.

  2. Trong cửa sổ Dự án, ở bên trái của Trình chỉnh sửa, bấm đúp vào tên của trang tính bạn đang sử dụng. (Trước tiên, bạn có thể cần mở thư mục VBAProject, sau đó mở thư mục Microsoft Excel Objects bên dưới nó.)

  3. Trong cửa sổ mã cho trang tính, hãy nhấp vào danh sách thả xuống Đối tượng và chọn Trang tính. Khi bạn làm như vậy, Thủ tục sẽ thay đổi thành SelectionChange và khuôn khổ cho trình xử lý sự kiện sẽ xuất hiện trong cửa sổ mã.

  4. Thay đổi trình xử lý sự kiện để nó xuất hiện như sau:

  5. Đóng VBA Editor.

Bây giờ, khi bạn di chuyển về trang tính này, nội dung của A1 phải được cập nhật liên tục để phản ánh vị trí của bạn.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (2302) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: