Bill có một bộ gồm nhiều sổ làm việc mà anh ấy thường sử dụng như một bộ.

Để tránh những con mắt tò mò từ nội dung của những sổ làm việc này, anh ta đã đặt mật khẩu cho từng sổ làm việc đó. Bill sử dụng một sổ làm việc menu làm cổng vào các sổ làm việc khác trong bộ. Sổ làm việc chứa các siêu liên kết đến các sổ làm việc riêng lẻ, cung cấp cho anh ta quyền truy cập nhanh vào các sổ làm việc trong bộ của mình.

Vì Excel bảo vệ, thông qua mật khẩu, mỗi sổ làm việc trên cơ sở cấp tệp, bất cứ khi nào Bill nhấp vào siêu liên kết, anh ấy cần nhập mật khẩu cho sổ làm việc mà anh ấy đang cố gắng truy cập. Anh ấy tự hỏi liệu có cách nào để chỉ cần nhập mật khẩu một lần (nó là cùng một mật khẩu cho tất cả các sổ làm việc trong bộ của anh ấy) và có quyền truy cập vào tất cả các sổ làm việc mà không cần phải nhập lại mật khẩu.

Câu trả lời ngắn gọn là điều này không thể được thực hiện vì Excel xử lý từng tệp riêng biệt. Chuyển sang một tệp riêng biệt thông qua siêu liên kết của bạn và Excel một lần nữa yêu cầu mật khẩu. Chỉ có hai cách khả thi để tránh những phiền toái. Đầu tiên là kết hợp tất cả các sổ làm việc riêng biệt thành một sổ làm việc duy nhất. Đây có thể không phải là một giải pháp tối ưu, vì bất kỳ lý do nào. (Ví dụ: bạn có thể cần phân phối sổ làm việc riêng lẻ cho người dùng khác. Nếu bạn kết hợp tất cả các sổ làm việc thành một, bạn loại bỏ khả năng này.)

Giải pháp khác là sử dụng macro để xử lý việc chuyển đổi giữa các sổ làm việc, thay vì sử dụng siêu liên kết. Có nhiều cách để thiết lập hệ thống macro như vậy, nhưng có một cách đơn giản bắt chước phương pháp siêu kết nối là tạo một trang tính mới sẽ hoạt động như “cổng vào” của bạn. Trong các ô mà bạn đã thêm siêu liên kết, thay vào đó hãy đặt đường dẫn đầy đủ và tên tệp của mỗi sổ làm việc mà bạn muốn liên kết đến.

Bạn sẽ kết thúc với một danh sách các thông số kỹ thuật tệp cho sổ làm việc của mình.

Bây giờ, bấm chuột phải vào tab trang tính của trang tính mới này. Excel hiển thị menu Ngữ cảnh mà từ đó bạn nên chọn Mã Chế độ xem. Thao tác này sẽ hiển thị VBA Editor, với ngăn mã được hiển thị cho trang tính. Nhập macro sau vào ngăn mã:

Private Sub Worksheet_BeforeDoubleClick _   (ByVal Target As Excel.Range, Cancel As Boolean)

Dim sPW As String     Dim sFile As String

sPW = "password" 'Change to your password     sFile = Target.Value     If sFile <> "" Then         If Dir(sFile) <> "" Then             Workbooks.Open _               FileName:=sFile, _               password:=sPW             Cancel = True         End If     End If End Sub

Điều duy nhất bạn phải thay đổi trong mã là mật khẩu bạn muốn sử dụng cho các sổ làm việc mà bạn đang truy cập. (Mã giả định rằng cùng một mật khẩu được sử dụng cho tất cả các sổ làm việc.)

Nhấn Alt + Q để thoát khỏi VBA Editor và bạn quay lại trang tính của mình. Lưu sổ làm việc, sau đó bấm đúp vào bất kỳ ô nào chứa đường dẫn và tên tệp. Những gì Excel làm là sau đó chuyển quyền điều khiển cho macro lấy đường dẫn và tên tệp rồi mở sổ làm việc đó.

_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 (2886) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm thấy 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: