我知道我可以使用以下VBA来显示常规Excel(2010)“另存为”对话框(已关闭),但如何显示特定的“发布为PDF或XPS”对话框?此对话框将文件类型限制为PDF和XPS,并且是我之后的文件类型,但在XlBuiltInDialog
枚举中似乎没有枚举它。
Application.Dialogs(xlDialogSaveAs).Show
通过GUI访问File - >可以访问此特定对话框。保存&发送 - >创建PDF / XPS文档 - >创建PDF / XPS。
答案 0 :(得分:1)
我有一个可以为你工作的解决方法。
1)创建一个userform,询问用户是否要保存为XPS或PDF。在用户窗体上创建2个按钮,一个显示文本“XPS”,另一个显示文本“PDF”。
2)为每个按钮添加代码,这样当按下时,它将以用户指定的格式保存文档。
在包含代码的模块中:
userform_save.Show
在xps按钮中:
Private Sub cb_xps_Click()
ActiveSheet.ExportAsFixedFormat Type:=xlTypeXPS, Filename:=filepath & xpsName
Unload Me
End Sub
在pdf按钮中:
Private Sub cb_pdf_Click()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=filepath & pdfName
Unload Me
End Sub
让我知道你的想法。
答案 1 :(得分:0)
经过一些调查后,我仍无法找到使用Application.Dialogs
显示此对话框的方法,但我可以使用此方法显示:
Application.CommandBars.ExecuteMso "FileSaveAsPdfOrXps"
适用于Excel 2007,2010和2013。