Hướng dẫn 3 cách để lưu và đóng tất cả workbook

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

Nếu bạn sử dụng Excel thường ngày thì việc mở và làm việc với nhiều workbook cùng một lúc là điều phổ biến. Tuy nhiên khi cần phải đóng tất cả các workbook đang mở để đi ra ngoài hoặc có việc thì thao tác đóng từng workbook rồi lưu lại hoặc đặt tên mới sẽ mất rất nhiều thời gian.

Vì vậy, qua bài này, Gitiho sẽ hướng dẫn các bạn 3 cách để đóng nhanh tất cả các workbook đang mở chỉ với vài thao tác đơn giản.

Cách 1: Sử dụng phím Shift + nút Close

Cách nhanh nhất để đóng tất cả các workbook đang mở là giữ phím Shift trong khi nhấn nút Close, nút chữ “X” ở góc trên bên phải của cửa sổ ứng dụng.

Cách lưu và đóng tất cả các tệp Excel đang mở

Nếu tất cả các workbook làm việc đang mở đã được lưu, thì tất cả chúng sẽ bị đóng.

Nếu bất kỳ workbook làm việc nào đang mở chưa được lưu, thì bạn sẽ được nhắc nhở lưu tệp. Cửa sổ cảnh báo sẽ xuất hiện và bạn sẽ phải nhấn Save hoặc Don’t Save cho từng workbook chưa được lưu.

Cách lưu và đóng tất cả các tệp Excel đang mở

Cửa sổ cảnh báo cũng sẽ có nút Save All, bạn có thể bấm nút này để có thể lưu đồng thời tất cả các workbook đang mở trong một bước. Nhấp vào nút Cancel để hủy lệnh đóng và workbook vẫn đang mở sẽ vẫn mở.

Nhưng nếu chúng ta không muốn lưu tất cả hoặc một số workbook đang mở thì sao? Chúng ta sẽ tìm hiểu điều đó trong cách thứ 3 ở dưới đây.

Cách 2: Thêm nút Close vào thanh Quick Access Toolbar

Bạn cũng có thể thêm nút Close All vào thanh công cụ Quick Access Toolbar để đóng tất cả các workbook đang mở. Thao tác này thực hiện tương tự như phím tắt Shift + Close ở trên.

Cách lưu và đóng tất cả các tệp Excel đang mở

Ưu điểm của phương pháp này là chúng ta chỉ cần một nút bấm mà không cần phải bấm các tổ hợp phím tắt. Nhưng các nút Quick Access Toolbar cũng có thể được truy cập bằng shortcut bằng cách nhấn phím Alt và số được gán cho nút, giống như hiển thị trong hình dưới đây, phím tắt trên Quick Access Toolbar của nút Close All chính là Alt + 5.

Cách lưu và đóng tất cả các tệp Excel đang mở

Để thêm nút Close All vào Quick Access Toolbar bạn thực hiện như sau: Trong cửa sổ workbook đang mở, truy cập vào menu File ở góc trên cùng bên trái, trong menu xổ xuống chọn tùy chọn Options.

Cách lưu và đóng tất cả các tệp Excel đang mở

Trong hộp thoại Excel Options hiển thị, kích chọn Quick Access Toolbar ở bên trái (1), rồi chọn tùy chọn Commands Not in the Ribbon (2) ngay dưới mục Choose commands from, tiếp theo kích chọn nút Close All (3), rồi bấm nút Add (4) và lập tức nút Close All được thêm vào (5). Cuối cùng bấm nút OK để hoàn tất (6).

Như vậy sau khi bạn bấm nút Close All trên thanh Quick Access Toolbar thì hộp thoại cảnh báo, yêu cầu người dùng lưu tài liệu trước khi đóng cũng sẽ hiển thị tương tự như cách 1 ở trên. 

Mẹo bổ sung: Bạn cũng có thể sử dụng phím tắt Ctrl + W để chỉ đóng một workbook nếu muốn. 

Cách lưu và đóng tất cả các tệp Excel đang mở

Cách 3: Đóng tất cả các workbook đang mở bằng Macro

Trong phần này, Gitiho sẽ chia sẻ với các bạn một vài macro có thể được sử dụng để đóng tất cả các workbook làm việc đang mở. Các macro giúp chúng ta linh hoạt hơn rất nhiều khi chúng ta muốn kiểm soát workbook nào được lưu trước khi đóng.

Bạn có thể tải xuống tệp Excel chứa macro ở ngay phía cuối bài này.

Macro để đóng tất cả workbook mà không cần lưu

Nếu chúng ta không muốn lưu bất kỳ tệp nào đang mở, thì chúng ta có thể sử dụng macro sau.

Sub Close_All_Files_No_Save()
'Close all open workbooks and don't save
Dim wb As Workbook
  'Loop through each workbook
  For Each wb In Application.Workbooks
    
    'Prevent the workbook that contains the
    'code from being closed
    If wb.Name <> ThisWorkbook.Name Then
      
      'Close the workbook and don't save changes
      wb.Close SaveChanges:=False
    
    End If
  Next wb
End Sub

Lưu ý: Chỉ nên chạy macro này nếu bạn chắc chắn không muốn lưu thay đổi đối với bất kỳ workbook nào đang mở vì sẽ không có cách nào để hoàn tác điều này. 

Xem thêm: Học lập trình VBA online

Macro để lưu tất cả ngoại trừ workbook mới chưa lưu

Đôi khi trong quá trình làm việc, ngoài workbook chính bạn còn mở thêm các workbook mới để “nháp” số liệu và những workbook mới thường bạn sẽ không lưu lại, nhưng vẫn sẽ lưu tất cả các workbook đang mở khác.

Cách lưu và đóng tất cả các tệp Excel đang mở

Các tệp trên workbook chưa bao giờ được lưu, vì vậy chúng sẽ không phần mở rộng và thường được Excel đặt mặt định là Book1, Book2, Book2 …., giống như trong hình ảnh ở trên, các tệp này không có phần mở rộng tệp (.xlsx hoặc .xlsm) như các tệp có tên đã được lưu.

Vì vậy, chúng ta có thể thêm câu lệnh If vào macro của mình để xem liệu có tồn tại phần mở rộng tệp hay không. Nếu phần mở rộng tệp tồn tại, thì chúng ta sẽ lưu tệp. Nếu không thì có thể đóng workbook mà không cần lưu.

Sub Save_and_Close_All_Files_Except_ScratchPads()
'Close all open workbooks except new unsaved files
Dim wb As Workbook
  'Loop through each workbook
  For Each wb In Application.Workbooks
    
    'Prevent the workbook that contains the
    'code from being closed
    If wb.Name <> ThisWorkbook.Name Then
      
      'Check if the file names has an extension
      If InStr(Right(wb.Name, 5), ".xls") > 0 Then
        wb.Close SaveChanges:=True
      Else
        'Do not save changes if it's a scratch pad.
        wb.Close SaveChanges:=False
      End If
    
    End If
  Next wb
End Sub

Macro để lưu, đóng tất cả workbook và tự động đặt tên tệp

Đôi khi chúng ta có thể muốn lưu một số workbook mới nhưng lại không có thời gian để xem qua từng workbook để lưu và đặt tên cụ thể. 

Cách lưu và đóng tất cả các tệp Excel đang mở

Trong trường hợp đó macro dưới đây sẽ giúp bạn tự động lưu và đóng TẤT CẢ các workbook, đồng thời tự động đặt tên cho các workbook mới chưa được lưu. Nó sẽ đặt tất cả các workbook vào một thư mục mà bạn chỉ định.

Cách lưu và đóng tất cả các tệp Excel đang mở

Sau đó, bạn có thể quay lại thư mục đó khi có thời gian rảnh để di chuyển và đổi tên workbook.

Sub Save_and_Close_All_Files()
'Close all open workbooks except new unsaved files
Dim wb As Workbook
Dim sPath As String
  'The path where the new unsaved files will be saved.
  'Change this to a folder on your computer.  End with a backslash \
  sPath = "C:\Users\username\Documents\Excel Campus\Scratch Pads\"
  'Loop through each workbook
  For Each wb In Application.Workbooks
    
    'Prevent the workbook that contains the
    'code from being closed
    If wb.Name <> ThisWorkbook.Name Then
      
      'Check if the file names has an extension
      If InStr(Right(wb.Name, 5), ".xls") > 0 Then
        wb.Close SaveChanges:=True
      Else
        'Save scratchpads in a folder
        wb.Close SaveChanges:=True, _
            Filename:=sPath & wb.Name & Format(Now, " yyyy-mm-dd-hhmm")
      End If
    
    End If
  Next wb
End Sub

Trên đây Gitiho vừa hướng dẫn các bạn 3 cách để lưu và đóng tất cả các workbook đang mở chỉ với vài thao tác đơn giản. Nếu thấy bài viết hay hãy chia sẻ với bạn bè của mình nhé, hoặc nếu các bạn biết thêm cách nào khác, hãy chia sẻ cùng chúng tôi thông qua comment ở phía dưới bài viết. Chúc các bạn thành công!

CÓ THỂ BẠN CŨNG QUAN TÂM:

Hướng dẫn 6 cách tìm và loại bỏ các giá trị trùng lặp trong Excel

Hướng dẫn cách sử dụng tham chiếu hỗn hợp trong Excel

Hướng dẫn cách thêm văn bản vào giữa các cell sử dụng công thức và mã VBA

Thời đại công nghệ 4.0 đang dần đi vào cuộc sống đòi hỏi mọi người phải tự trang bị kiến thức tin học cho phù hợp để có thể bắt kịp nhưng thay đổi nhanh chóng này. Chẳng ai khác ngoài bạn hiểu mình cần trang bị thêm kiến thức gì. Hãy tìm hiểu ngay TẠI ĐÂY những khóa học hấp dẫn, có tính thực tế cao của Gitiho và đăng ký nhận tư vấn ngay hôm nay.

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