VBA中DOM的另存为或保存对话框

我正在尝试保存 DOM 文档并且 save 方法工作正常:

xDoc.Save "myFileName"

但我希望用户能够选择路径和可能的名称。所以我试过:

xDoc = "Application.FileDialog(msoFileDialogSaveAs).Show"
If myNum <> 0 Then
    XDoc = Application.FileDialog(msoFileDialogSaveAs).SelectedItems(1)
End If

这打开了一个另存为对话框,但是当我单击确定时,我得到一个运行时“对象不支持此属性或方法”。我知道它可能行不通,但认为它应该是有道理的。

任何人都知道如何使用 VBA 打开另存为对话框来保存 DOM(文档)?

大卫·泽门斯

所以这是一个问题,因为您使用的是文字字符串,而不是调用方法:

xDoc = "Application.FileDialog(msoFileDialogSaveAs).Show"
'The value of xDoc has been assigned literally as above!!!

相反,这样做是为了实例化一个FileDialog对象,然后使用它。Show它,请确保它已被使用(如果用户取消Show将返回False然后.Execute进行SaveAs操作。

Dim fdlg As FileDialog
Set fdlg = Application.FileDialog(msoFileDialogSaveAs)
fdlg.Title = "Save XML file as..."
fdlg.FilterIndex = 5  'Defaults to the XML Data file filter
If fdlg.Show() Then
    xDoc.Save fdlg.SelectedItems(1)         
Else: 
    MsgBox "File has not been saved!"
End If

注意:上面的代码中没有包含错误处理,如果文件已经存在,则预计它会失败或引发警告/等。根据需要进行修改。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP保存文件而不另存为对话框

HTA中的“另存为...”对话框

Windows XP中缺少另存为对话框

如何在Notepad ++中的“另存为”对话框中编辑“另存为类型:”列表?

如何保存在“另存为”对话框中选择的文件?

如何防止“保存文件/另存为”对话框刷新?

如何使用宏通过“文件>另存为”对话框保存带有密码的文档?

编辑和保存文本文件始终显示“另存为”对话框

如何打开“另存为”对话框以在反应中保存 ppt 文件?

Visual Studio在已保存的文件上提示“另存为...”对话框。

按钮显示另存为对话框,然后保存到设置的位置

获取Firefox“另存为”对话框,以停止猜测我要保存文件的位置

保存时,Photoshop始终以“另存为”对话框提示我

是否提示用户使用“另存为”对话框保存文件?

VBA-设置默认另存为名称而不打开对话框

VBA Word-具有初始文件名的另存为对话框

使用 VBA 和对话框以不同的方式另存为 CSV 结果

如何打开另存为对话框并另存为PDF

在另存为对话框中选择目录

单击打开链接另存为对话框

Greasemonkey-“另存为”对话框

“另存为”对话框的导航窗格中的“ Microsoft Word”条目?

在asp.net中单击按钮打开另存为对话框的方法

在“ KDE另存为”对话框中创建一个新目录

如何从angularjs控制器触发Internet Explorer中的“另存为”对话框

如何使用AppleScript在Firefox的“另存为”对话框中输入文件名?

在没有地址栏的“另存为”对话框中获取当前打开的路径

如何从Xcode模板中删除“另存为”对话框?

Windows 7:无法在“文件另存为”对话框中复制粘贴目录路径