Trần Văn Huệ
Trần Văn Huệ
Thảo luận 0 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 153 lượt xem

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

Oct 15 2020

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


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. 


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.


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. 


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. 


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


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.

Cùng tham gia cộng đồng hỏi đáp về chủ đề Tin học văn phòng

Thảo luận 0 câu trả lời
Lượt xem 153 lượt xem
Vỗ tay vỗ tay

0 Bình 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