你好!根据你的问题,我将为你解答。
问题:为什么我的代码不复制ThisWorkbook并用一个新的增量名称保存它(为了版本历史)?
回答:在Excel VBA中,复制并保存工作簿的代码可以通过以下步骤实现:
ThisWorkbook
对象来引用当前打开的工作簿。SaveCopyAs
方法将工作簿保存为一个新的副本。这个方法会将工作簿保存到指定的路径,并使用指定的文件名。下面是一个示例代码,演示了如何复制并保存工作簿:
Sub SaveWorkbookWithIncrementalName()
Dim originalWorkbook As Workbook
Dim newWorkbook As Workbook
Dim savePath As String
Dim fileName As String
' 获取当前工作簿的引用
Set originalWorkbook = ThisWorkbook
' 设置保存路径和文件名
savePath = "C:\Path\To\Save"
fileName = "Workbook_" & Format(Now, "yyyymmdd_hhmmss") & ".xlsx"
' 复制工作簿
originalWorkbook.SaveCopyAs savePath & "\" & fileName
' 打开新的副本
Set newWorkbook = Workbooks.Open(savePath & "\" & fileName)
' 在新的副本中进行操作
' ...
' 关闭并保存新的副本
newWorkbook.Close SaveChanges:=True
End Sub
在这个示例代码中,savePath
变量表示保存路径,你需要根据实际情况进行修改。fileName
变量使用了当前日期和时间戳来生成唯一的文件名。
请注意,这只是一个示例代码,你可以根据自己的需求进行修改和扩展。
推荐的腾讯云相关产品:腾讯云对象存储(COS)
希望这个回答能够帮助到你!如果你有任何其他问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云