是否可以制作保存按钮(不另存为按钮)以将文档保存在特定路径中?
Posted
技术标签:
【中文标题】是否可以制作保存按钮(不另存为按钮)以将文档保存在特定路径中?【英文标题】:Is it possible to make save button (not save as button) to save document in specific path? 【发布时间】:2017-08-12 12:45:54 【问题描述】:我想在 VBA excel 中为我的验证程序制作保存按钮。
保存按钮会将文件保存在特定路径中,并根据文档状态(清洁或错误)自动重命名。
如果文件已经保存,但文件仍然出错,文件将命名为error.xlsm
但是,当我修复文档错误时。该文档将命名为 clean.xlsm。 手动删除第一个文件(error.xlsm)让我很烦。
是否可以在不使用另存为的情况下使保存按钮保存(不是另存为按钮)以将文档保存在特定路径中?
这是我的代码:
Private Sub CommandButton2_Click()
ActiveWorkbook.SaveAs Filename:="D:\" & Sheets("C").Range("G23").Text & ".xlsm", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, Password:=vbNullString, WriteResPassword:=vbNullString, _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.Close
End Sub
*注意:Sheets("C").Range("G23").Text
包含文档状态(如果公式为干净或错误)
【问题讨论】:
【参考方案1】:试试这个...
Private Sub CommandButton2_Click()
Dim fName As String
Application.DisplayAlerts = False
fName = ActiveWorkbook.Sheets("C").Range("G23").Value
ActiveWorkbook.SaveAs FileName:="D:\" & fName & ".xlsm", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, Password:=vbNullString, WriteResPassword:=vbNullString, _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.Close
On Error Resume Next
Select Case fName
Case "Error"
Kill "D:\Clean.xlsm"
Case "Clean"
Kill "D:\Error.xlsm"
End Select
End Sub
【讨论】:
我已经试过了,先生.. 但是,仍然有 2 个文件,(干净和错误)。我想如果文件是干净的,之前保存的错误文件,自动删除.. 代码首先按照G23中可用的字符串以文件新文件名保存文件并删除其他文件。我已经尝试了代码,它运行没有问题。 谢谢您,先生,我知道问题所在.. 我刚刚删除了 ActiveWorkbook.Close。它有效!谢谢你uuuu @arifulromadhon - 如果您认为合适,请记住投票/接受答案。 @arifulromadhon 由于您在原始代码中使用 ActiveWorkbook.Close,我假设您正在从另一个工作簿运行此代码,这就是我没有删除它的原因。但很高兴你自己弄清楚了。 :)以上是关于是否可以制作保存按钮(不另存为按钮)以将文档保存在特定路径中?的主要内容,如果未能解决你的问题,请参考以下文章