Mỗi khi Mathew đóng một sổ làm việc, anh ấy muốn Excel tạo một bản sao lưu ngày tháng của sổ làm việc đó, nghĩa là nó được lưu bằng tên tệp bao gồm ngày tháng. Do đó, nếu anh ấy lưu “AnyWorkbookName”, nó sẽ không chỉ lưu dưới tên đó mà còn dưới tên “AnyWorkbookName [Ngày & Giờ hôm nay].” Mathew chắc chắn rằng điều này cần được thực hiện với VBA, nhưng anh ấy không chắc chắn về cách thực hiện nó.

Có bất kỳ số lượng macro nào có thể được phát triển để thực hiện tác vụ này. Hầu hết chúng đều là các biến thể của một chủ đề (có thể nói là như vậy), vì vậy đối với mục đích của chúng tôi, chỉ cần một ví dụ duy nhất là đủ.

Macro sau sẽ, ngay trước khi đóng sổ làm việc, lưu sổ làm việc với ngày và giờ được thêm vào cuối tên tệp.

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim sFileName As String     Dim sDateTime As String

With ThisWorkbook         sDateTime = " (" & Format(Now, "yyyy-mm-dd hhmm") & ").xlsm"

sFileName = Application.WorksheetFunction.Substitute _           (.FullName, ".xlsm", sDateTime)

.SaveCopyAs sFilename     End With End Sub

Macro đặt cùng chuỗi ngày và giờ vào biến sDateTime. Sau đó, nó sẽ được chèn vào tên tệp của sổ làm việc bằng cách sử dụng hàm trang tính SUBSTITUTE. (Chuỗi ngày / giờ được chèn hiệu quả ngay trước phần mở rộng tên tệp.) Macro giả định rằng sổ làm việc đang được lưu dưới dạng tệp XLSM vì nó phải chứa macro — chẳng hạn như macro để thực hiện việc lưu này.

Macro phải được đặt trong mô-đun ThisWorkbook cho sổ làm việc.

Điều này đảm bảo rằng nó sẽ thực thi ngay trước khi sổ làm việc được đóng.

Ngoài ra, còn có các phần bổ trợ của bên thứ ba có thể thực hiện tác vụ này. Sau đây là một số điều mà bạn có thể muốn xem.

http://www.jkp-ads.com/Download.asp#AutoSafe http://www.asap-utilities.com

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (13195) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365.