Hướng dẫn chi tiết cách tạo menu liên kết trong Excel

Để có thể thực hiện liên kết dữ liệu trong Excel, bạn sẽ thường dùng đến các chức năng Hyperlink. Thế nhưng các chức năng anyf chỉ đơn giản là làm một công việc dẫn link tới đích đến. Trong khi đó, ở một vài trường hợp, bạn sẽ muốn kết hợp thêm các chức năng khác vào như là link tới sheer đang ẩn, link tới vị trí đã bị ẩn thì phải dùng cách khác. Và trong bài viết này, chúng tôi sẽ hướng dẫn cho bạn cách dùng VBA để tạo được MENU liên kết các chức năng lại với nhau.

QUY TRÌNH LIÊN KẾT DỮ LIỆU

Trước khi tiến hành viết code trong VBA, bạn nên làm quen với việc mô tả quá trình công việc cần làm trước, để việc viết code, tổ chức lệnh trong VBA sẽ trở nên rõ ràng hơn và dễ hiểu hơn.

Quy trình liên kết dữ liệu được mô tả như sau:

1. LINK ĐẾN

Mục đích chính sẽ là CHỌN tới địa chỉ đích. Tại địa chỉ đích này sẽ gồm:

  • Tên sheet
  • Ô / vùng ô nào trong sheet đó
  • Các chức năng khác kèm theo (nếu có)

Trong nội dung này, hãy chú ý đến một số nguyên tắc sau:

  • Nếu như Sheet đang bị ẩn thì phải mở ẩn trước, tiếp đó mới chọn tới Sheet đó được.
  • Nếu như ô đang ẩn thì phải mở ẩn trước, rồi sau đó mới chọn tới ô đó được.
  • Nếu như không nói cụ thể ô nào trong Sheet thì bạn vẫn có thể chọn tới Sheet đó được
  • Nếu như Sheet không tồn tại thì liên kết sẽ lỗi

2. LINK QUAY LẠI

Khi đã tạo liên kết, bạn cần lưu ý khi có link dẫn đi thì cần phải có link để quay trở lại. Việc này nhằm giúp liên kết đảm bảo được đường đi của nó có tính 2 chiều, cũng như giúp việc đi đến hay quay trở lại được thực hiện một cách dễ dàng.

Việc tạo link quay trở lại cũng sẽ dựa trên nguyên tắc giống Link đến, nhưng ở đây link quay trở lại có thể kèm theo những chức năng như ẩn sheet đích, ẩn ô đang chọn. Lúc này, chúng ta cần lưu ý về trình tự thực hiện để tránh việc bị xung đột.

CÁCH VIẾT LỆNH LIÊN KẾT ĐA CHỨC NĂNG TRONG VBA

Sau khi đã hiểu rõ được quy trình rồi, bạn tiến hành mở cửa sổ VBA, sau đó tạo mới 1 Module và thực hiện viết các Sub liên kết.

TẠO LINK ĐẾN TRONG VBA

Ví dụ như bạn đang có một file Excel, trong đó gồm các Sheet như sau:

  • MENU: là nơi quản lý danh sách các Sheet cần Liên kết.
  • Create: là mục đích để tạo mới 1 phiếu Ủy nhiệm chi (UNC)
  • Data: là mục đích để quản lý danh sách các phiếu UNC
  • UNC: có công dụng để in Ủy nhiệm chi
  • DS_NguoiChuyen: là danh sách người chuyển tiền
  • DS_NguoiNhan: là danh sách người nhận tiền

Trong Sheet MENU, bạn sẽ tổ chức các link như bên dưới:

Trong đó sheet Create đã được ẩn đi rồi, nhưng bạn cũng có thể gọi ra sheet này chỉ với thao tác đơn giản là bấm vào dòng Tạo mới Ủy nhiệm chi.

Cách thực hiện gồm các bước sau:

Bước 1: Tạo những Shapes hình chữ nhật, trong mỗi shape bạn sẽ viết tên tương ứng với những địa chỉ cần link.

Trong những Shape này,  bạn chỉ cần lấy tên đường link, còn lại màu của shape, đường viền bạn sẽ loại bỏ đi (No Fill, No Line)

Bước 2: Tại Module vừa tạo (trong cửa sổ VBA), hãy tạo Sub để liên kết cho từng Shape

Ví dụ: Sub Link_Create_UNC để giúp liên kết tới Sheet Create như sau:

Trong đó:

  • Sheet2 là Code Name của sheet Create
  • Sheet2.Visible sẽ là thuộc tính ẩn/hiện của Sheet, trong đó bạn chọn xlSheetVisible để cho sheet đó được hiện ra (nếu bị ẩn thì sẽ hiện)
  • Sheet2.Select sẽ là thuộc tính lựa chọn, điều này cũng có nghĩa là chọn tới Sheet2 sau khi sheet đó đã ở chế độ hiện

Bước 3: Tiến hành gán Macro cho Shape Tạo mới UNC

Tại Shape, thực hiện tạo mới UNC trên MENU, bạn bấm chuột phải rồi chọn Assign Macro, tiếp tục chọn tới macro Link_Create_UNC vừa tạo được ở bước 2

Bây giờ thì bạn thử bấm vào Shape đã gán macro để có thể thấy macro được thực hiện: Sheet Create lúc này sẽ được hiện ra trên thanh Sheet Tab. Đồng thời, bạn chọn tới Sheet này, giao diện sheet tạo mới UNC sẽ như sau:

Tiếp tục như vậy, bạn sẽ tạo liên kết đến từng Sheet theo những Shape trong MENU

TẠO LIÊN KẾT QUAY TRỞ LẠI MENU

Tương tự đối với liên kết đến các Sheet, bạn cũng thực hiện những bước như sau:

Bước 1: Tạo Shape cho lệnh quay trở về MENU, ví dụ như Shape có chữ Đóng trong sheet Create

Bước 2: Tiếp tục tạo sub Link_MENU như sau:

Trong đó:

  • AciveSheet sẽ là sheet đang hoạt động, đang mở. Tại Sheet đang làm việc bạn sẽ đặt lệnh quay trở lại MENU
  • ActiveSheet.Visible = xlSheetHidden tức là ẩn sheet đang hoạt động đi. Lúc này, khi quay trở lại MENU đồng thời bạn sẽ ẩn sheet đó đi
  • Sheet7 là code name của sheet MENU
  • Sheet7.select là chọn tới Sheet 7 (MENU)

Bước 3: Thực hiện gán Macro cho Shape và tiến hành lệnh đóng UNC

Như vậy là bạn đã có thể hoàn tất được một vòng đường link dữ liệu trong VBA rồi đấy! Chúc bạn thao tác thành công!

Đừng quên tham khảo thêm các kiến thức khác nhé:

Tìm hiểu các kí tự đặc biệt khoảng trắng trong Excel

Cách đếm nhiều điều kiện dạng hoặc hàm COUNTIFS đơn giản

5 công thức cộng trong Excel đơn giản và hiệu quả

Hyperlink trong Word là những liên kết đến một trang web hay một thư mục nào đó rất hữu ích trong việc tìm kiếm và kết nối thông tin. Tuy nhiên, đôi lúc người dùng sẽ không cần đến những liên kết này và muốn xóa nó đi. Vậy phải…Xem chi tiết: Hướng dẫn cách xóa Hyperlinks trong Word cực đơn giản
Ta biết đến Excel với trang tính có chứa rất nhiều công thức, hàm khác nhau thì ít ai biết rằng trong Word cũng có thể thao tác các hàm cụ thể để người dùng sử dụng. Vậy Word cung cấp những hàm nào và có thông dụng như Excel?…Xem chi tiết: Hướng dẫn cách tạo văn bản ngẫu nhiên trong Word
Bạn đang muốn lưu tài liệu word của mình dưới dạng trang web nhưng chưa biết làm cách nào? Vậy thì bài viết dưới đây sẽ giúp bạn trả lời chi tiết nhất! CÁCH LƯU TÀI LIỆU DƯỚI DẠNG TRANG WEB Lựa chọn tốt nhất để lưu tài liệu dưới…Xem chi tiết: Hướng dẫn cách lưu tài liệu dưới dạng trang web
Trong lúc soạn thảo văn bản trên Word, bạn luôn muốn biết đoạn văn bản của mình đã được bao nhiêu từ. Thao tác thực hiện rất đơn giản, chỉ cần mở bảng thống kê là kiểm tra được. Hãy cùng tìm hiểu chi tiết cách thực hiện trong bài…Xem chi tiết: Hướng dẫn mở bảng thống kê chữ trong Word
Trong quá trình thao tác với Word, bạn sẽ không thể không dùng đến dấu đóng mở ngoặc đơn để mô tả chi tiết thêm cho một vấn đề nào đó hay là một câu ghi chú,.... Tuy nhiên, nếu trong trường hợp bạn muốn xóa bỏ tất cả các…Xem chi tiết: Hướng dẫn xóa bỏ phần văn bản nằm trong dấu ngoặc đơn

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *