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.
Nội dung chính
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.
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ử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.
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.
Ư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.
Để 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.
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.
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á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ể.
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.
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
Khóa học phù hợp với bất kỳ ai đang muốn tìm hiểu lại Excel từ con số 0. Giáo án được Gitiho cùng giảng viên thiết kế phù hợp với công việc thực tế tại doanh nghiệp, bài tập thực hành xuyên suốt khóa kèm đáp án và hướng dẫn giải chi tiết. Tham khảo ngay bên dưới!