保存没有宏的 Excel 文件。 Excel VBA代码
Posted
技术标签:
【中文标题】保存没有宏的 Excel 文件。 Excel VBA代码【英文标题】:Save an Excel-File without Macros. Excel VBA Code 【发布时间】:2018-08-13 12:19:21 【问题描述】:我创建了一个带有宏的 Excel 文档,我的客户应按下按钮填写该宏。
按钮下面就是这个宏:
Sub filesave()
Dim bFileSaveAs As Boolean
bFileSaveAs = Application.Dialogs(xlDialogSaveAs).Show
End Sub
问题在于,作为默认选项,您可以将文档另存为启用宏的 Excel 工作簿。
如何显示为默认未启用宏的 Excel 格式或不显示将文档另存为启用宏的文档的可能性,以确保宏不会保存在已填写的文档副本中?
关于代码外观的一些想法?
【问题讨论】:
您所要做的就是另存为 .xlsx 【参考方案1】:您可以使用GetSaveAsFilename
让用户选择位置和文件名,然后通过从XlFileFormat Enumeration 中选择文件格式以Workbook.SaveAs Method 保存。
Public Sub SaveFileAs()
Dim FileToSave As Variant
FileToSave = Application.GetSaveAsFilename(fileFilter:="xlsx Files (*.xlsx), *.xlsx")
If FileToSave <> False Then
ActiveWorkbook.SaveAs Filename:=FileToSave, FileFormat:=xlOpenXMLWorkbook
Else
'user chose cancel
End If
End Sub
【讨论】:
如何不询问用户,只需将.xlsm
转换为.xlsx
,然后删除.xlsm
?
@lalebarde 您需要的一切都在这个答案和链接的文档中。你试过什么了?可能最好根据How to Ask 提出一个新问题,并说明您遇到的问题或错误。以上是关于保存没有宏的 Excel 文件。 Excel VBA代码的主要内容,如果未能解决你的问题,请参考以下文章
Excel 保存文件出现 您试图打开的文件类型(Excel 2007和更高版本的启用宏的工作簿和模板)被信任中心的文件阻止设置阻止
使用 VBA 将包含 Excel 文件 (.xlsm) 的宏保存为不包含宏的文件 (.xlsx) 时抑制对话框