Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Nội dung được viết bởi Trần Văn Huệ

Bạn muốn chia sẻ một tệp dữ liệu Excel với bạn của mình, nhưng trong đó có một vài sheets dữ liệu quan trọng. Bạn muốn thiết lập để khi chuyển tệp tin cho họ, khi họ mở tệp tin đó lên, lập tức sheets được chỉ định trong tệp Excel sẽ tự động ẩn đi. 

Dưới đây Gitiho sẽ hướng dẫn các bạn cách tự động ẩn Worksheets cụ thể khi mở tệp Excel.

Cách tự động ẩn một sheets cụ thể khi tệp Excel được mở 

Nếu bạn muốn ẩn một sheets cụ thể khi mở một tệp Excel, bạn có thể áp dụng mã VBA sau.

Bước 1: Mở tệp Excel cần thiết lập để tự động ẩn một sheets cụ thể khi mở.

Bước 2: Bấm tổ hợp phím ALT + F11, hoặc bấm nút Visual Basic trong thẻ Developer để mở cửa sổ Microsoft Visual Basic for Applications.

Bước 3: Trong ngăn Project-VBAProject ở bên trái, kích đúp chuột vào mục ThisWorkbook ở phía dưới để mở Module dòng lệnh trống ở khung bên phải. 

Bước 4: Sao chép đoạn mã dưới đây rồi dán vào cửa sổ Module bên phải. 

Private Sub Workbook_Open()
Sheets("Sheet5").Visible = False
End Sub

Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Lưu ý : Trong đoạn mã trên, Sheet5 là tên của sheets trong tệp Excel mà bạn muốn ẩn tự động khi tệp Excel được mở. Tùy vào việc bạn đặt tên sheets cần ẩn tự động của tệp Excel mà thay đổi cho phù hợp.

Bước 5: Bấm vào nút Save để lưu mã và đóng cửa sổ dòng lệnh này. 

Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Bước 6: Sau đó, hộp thoại Save as hiển thị, đặt tên cho tệp Excel, chọn nơi lưu và chọn định dạng lưu tệp tại khung Save as type là Excel Macro-Enabled Workbook rồi bấm nút Save để hoàn tất.

Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Bước 7: Khi bạn mở tệp Excel này vào lần sau, trước tiên hãy bấm nút Enable Content trên thanh cảnh báo màu vàng, sau đó sheets đã được chỉ định của bạn sẽ được ẩn tự động. 

Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Cách tự động ẩn nhiều sheets khi tệp Excel được mở

Ở phần trên, Gitiho đã hướng dẫn các bạn đoạn mã để ẩn một sheets cụ thể khi mở tệp Excel. Nhưng nếu có nhiều sheets cần ẩn tự động thì làm thế nào? Vậy thì dưới đây là đoạn mã VBA sẽ giúp bạn thực hiện việc này.

Bước 1: Mở tệp Excel cần thiết lập để tự động ẩn nhiều sheets đồng thời khi mở.

Bước 2: Liệt kê các tên tất cả các sheets mà mình muốn ẩn khi mở tệp Excel. Sau đó “bôi đen” để chọn tên các sheets này, trong khung Name box ở góc trên cùng bên trái của tệp Excel, bạn đặt tên là SheetsToHide và nhấn phím Enter, giống như hình ảnh dưới đây. 

Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Bước 3: Bấm tổ hợp phím ALT + F11, hoặc bấm nút Visual Basic trong thẻ Developer để mở cửa sổ Microsoft Visual Basic for Applications.

Bước 4: Trong ngăn Project-VBAProject ở bên trái, kích đúp chuột vào mục ThisWorkbook ở phía dưới để mở Module dòng lệnh trống ở khung bên phải. 

Bước 5: Sao chép đoạn mã dưới đây rồi dán vào cửa sổ Module bên phải. 

Private Sub Workbook_BeforeClose(Cancel As Boolean)
   'Updateby Extendoffice 20161206
    Dim ws As Worksheet
    For Each ws In Worksheets
       ws.Visible = xlSheetVisible
    Next ws
End Sub
Private Sub Workbook_Open()
    Dim ws As Worksheet
        For Each ws In Worksheets
            If WorksheetFunction.CountIf([SheetsToHide], ws.Name) > 0 Then
                ws.Visible = xlSheetHidden
                MsgBox ws.Name & "Has been hidden!", vbInformation, "Kutools for Excel"
            Else
                ws.Visible = xlSheetVisible
            End If
        Next ws
    Set ws = Nothing
End Sub

Hướng dẫn cách tự động ẩn các sheets cụ thể khi mở tệp Excel

Lưu ý : Trong đoạn mã trên, SheetsToHide là tên dải ô mà bạn muốn ẩn và đã tạo ở bước 2.

Bước 6: Bấm vào nút Save để lưu mã và đóng cửa sổ dòng lệnh này. 

Bước 7: Sau đó, hộp thoại Save as hiển thị, đặt tên cho tệp Excel, chọn nơi lưu và chọn định dạng lưu tệp tại khung Save as type là Excel Macro-Enabled Workbook rồi bấm nút Save để hoàn tất.

Như vậy từ lần sau trở đi, mỗi khi bạn hoặc bất kỳ ai mở tệp Excel này, các sheets được chỉ định trong tệp tin sẽ được ẩn tự động. 

Trên đây Gitiho vừa hướng dẫn các bạn hai cách để tự động ẩn các sheets trong bảng dữ liệu Excel. Nếu các bạn biết thêm cách nào khác để thực hiện, hãy để lại comment cho chúng tôi ở phía dưới bài viết này nhé. Chúc các bạn thành công!.

Ngoài ra nếu bạn đang muốn học về cách tạo mã VBA trong Excel để tối ưu hóa công việc tự động. Vậy thì xin giới thiệu với các bạn khóa học VBAG01 - Tuyệt đỉnh VBA - Viết code trong tầm tay do Gitiho tổ chức. Khóa học sẽ do các chuyên gia có uy tín trực tiếp giảng dạy, sẽ giúp các bạn nhanh chóng nắm vững được những kiến thức và làm chủ VBA trong Excel.

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông