打开另存为工作簿的另存为对话框

时间:2020-06-07 09:08:25

标签: excel vba save-as

我目前正在研究一种临时解决方案,但是遇到了问题....

情况是:

我有一个内置于Excel中的转换器,它可以打开XLS文件,进行一些修改,以便可以将文件上传到Oracle数据库。

问题是,我打开的XLS文件无法将“另存为”对话框保存到该文件,而是始终保存该转换器的副本。

我需要做的是在文件路径中打开“另存为”对话框,为我打开的文件设置CSV的文件过滤器。

RRBOOK。激活 RR Book是我打开的DIM文件

Dim FileName As String
FileName = Application.GetSaveAsFilename("\\FILEPATH\", FileFilter:="CSV (Comma delimited) (*.csv), *.csv")
If FileName <> "False" Then
 ActiveWorkbook.SaveAs FileName
End If

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

避免使用ActiveWorkbook.Activate

直接将所需的工作簿保存为

RRBOOK.SaveAs FileName

此外,您还应该根据XlFileFormat enumerationWorkbook.SaveAs method指定要保存的文件格式。

因此,要另存为CSV,则应使用

RRBOOK.SaveAs FileName, xlCSV

所以你最终会得到类似的东西

Dim FileName As Variant
FileName = Application.GetSaveAsFilename("\\FILEPATH\", FileFilter:="CSV (Comma delimited) (*.csv), *.csv")
If VarType(FileName) = vbBoolean And FileName = False Then
    'user pressed cancel
    Exit Sub
Else
    RRBOOK.SaveAs FileName
End If