【问题标题】:Open saveas dialog box for another workbook打开另一个工作簿的另存为对话框
【发布时间】:2020-06-07 09:08:25
【问题描述】:

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

情况是:

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

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

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

RRBOOK.Activate 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

任何帮助将不胜感激!

【问题讨论】:

    标签: excel vba save-as


    【解决方案1】:

    避免使用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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-14
      • 1970-01-01
      相关资源
      最近更新 更多