Dear nhopt,
------------
Cám ơn bạn vì cuối cùng thì cũng có người hiểu ý đồ của mình trong chủ đề này (
Liên kết động trong Exce). Mình gửi lên đây một minh hoạ nhỏ theo thắc mắc của bạn để bạn tham khảo nhé.
Ngoài những gì mình đã đề cập trong chủ đề
Liên kết động trong Exce, để áp dụng thành công, bạn cũng lưu ý thêm một số vấn đề sau:
- Đặt tên file nguồn phải không có dấu cách (space), tốt nhất là đặt không dấu (theo đúng quy tắc đặt tên Name trong Define Name. Ví dụ "File nguon.xls" phải sửa thành "FileNguon.xls" hoặc "File_Nguon.xls" hoặc tốt nhất là đặt tường minh rõ nghĩa, ví dụ: "KHACHHANG.xls", "DANHMUC.xls"...
- Các Refer to của Name được định nghĩa trong file nguồn phải không dùng công thức (như file nguồn của bạn, các name này sử dụng hàm OFFSET là không được). Bởi vì đối số của hàm INDIRECT chỉ nhận giá trị là một dữ liệu kiểu String (Text) - hay còn gọi là kiểu chuỗi.
Bạn tham khảo file minh hoạ đính kèm bên dưới. Bạn sẽ rút ra nhận xét là Link Manager (trong Edit Links) sẽ không quản lý liên kết dạng này (sẽ khoẻ cho bạn, bạn sẽ không bị "giựt cái mình" mỗi khi nhìn thấy hộp thoại cảnh báo Update links, nhưng ngược lại bạn sẽ nhìn thấy... lỗi #REF! nếu như file nguồn chưa mở!).
Từ mô hình liên kết này, mình gợi ý bạn khi xây dựng một ứng dụng trên Excel - nhất là ứng dụng kế toán, hãy "cắt" các bảng dữ liệu lưu trữ thành một book riêng, anh nào làm nhiệm vụ của anh đó (Danh mục để lưu trữ các bảng danh sách, Nhật ký để lưu trữ số liệu phát sinh hàng ngày, Báo cáo chỉ lưu mẫu báo cáo (nên để dạng Template File), mỗi khi xem sẽ lấy dữ liệu từ Nhật ký đổ qua!).
Ứng dụng cách tham chiếu này, bạn có thể chia dữ liệu theo nhiều kỳ trên mỗi Workbook khác nhau (chú ý cách đặt tên book theo mỗi kỳ để thuận tiện việc ghép tham số kỳ trong tham chiếu động)
Chúc bạn thành công!