Chào các bác, dạo này em hay làm việc với các file Excel có cấu trúc lặp đi lặp lại và nhận ra một điều: việc tham chiếu đến các ô/vùng dữ liệu cố định đôi khi rất bất tiện. Ví dụ, mình muốn tính tổng một danh sách các cột mà tên cột lại được lưu ở một ô khác. Nếu dùng tham chiếu trực tiếp thì rất dễ sai hoặc phải sửa thủ công nhiều.
Sau một hồi mò mẫm, em đã tìm ra một hàm cực kỳ hữu ích, đó là INDIRECT. Hàm này cho phép chúng ta tạo ra một tham chiếu đến một ô hoặc một vùng dữ liệu dựa trên một chuỗi văn bản. Nói cách khác, chúng ta có thể gọi tên ô hoặc vùng dữ liệu mà không cần gõ trực tiếp!
Ví dụ đơn giản:
- Nếu ô A1 chứa văn bản
B2, thì công thức=INDIRECT(A1)sẽ trả về giá trị của ô B2. - Nếu ô A1 chứa văn bản
C1:C10, thì công thức=SUM(INDIRECT(A1))sẽ tính tổng các giá trị từ C1 đến C10.
Ứng dụng thực tế mà em thấy hay nhất là:
- Tạo báo cáo động: Tên sheet, tên cột, tên hàng có thể thay đổi và được lưu ở một ô khác. Dùng INDIRECT để tham chiếu đến dữ liệu mà không cần sửa công thức mỗi khi thay đổi tên.
- Xây dựng menu thả xuống (dropdown list) liên kết: Kết hợp với hàm OFFSET hoặc INDEX để tạo danh sách phụ thuộc.
- Kiểm tra dữ liệu: Dùng INDIRECT để kiểm tra giá trị của nhiều ô/vùng dựa trên một danh sách tên được định nghĩa trước.
Em thấy hàm này tuy đơn giản nhưng tiềm năng ứng dụng rất lớn, giúp tự động hóa và linh hoạt hóa các công thức rất nhiều. Có bác nào đã dùng INDIRECT trong các trường hợp phức tạp hơn không, chia sẻ cho em học hỏi với ạ?