问题描述
现在下面的代码正在运行,但它会自动保存在代码中定义的文件夹中。
Private Sub CommandButton2_Click()
' Button PDF '
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"\\Desktop\Test_PDF.pdf",ExportFormat:= _
wdExportFormatPDF,OpenAfterExport:=True,Optimizefor:= _
wdExportOptimizeforPrint,Range:=wdExportFromTo,From:=2,To:=7,Item:= _
wdExportDocumentContent,IncludeDocProps:=True,KeepIRM:=True,_
CreateBookmarks:=wdExportCreateNoBookmarks,DocStructureTags:=True,_
BitmapMissingFonts:=True,UseISO19005_1:=False
End Sub
我想更改我可以选择保存目的地的代码,所以如果我按下按钮,我会收到一个弹出窗口。
解决方法
例如:
Private Sub CommandButton2_Click()
Application.ScreenUpdating = False
Dim strFolder As String,strFile As String,strTxt As String
strFolder = GetFolder
If strFolder = "" Then
MsgBox "No Save Folder Selected!",vbCritical
Exit Sub
Else
ActiveDocument.ExportAsFixedFormat _
OutputFileName:=strFolder & "\Test_PDF.pdf",ExportFormat:=wdExportFormatPDF,_
OpenAfterExport:=True,OptimizeFor:=wdExportOptimizeForPrint,_
Range:=wdExportFromTo,From:=2,To:=7,Item:=wdExportDocumentContent,_
IncludeDocProps:=True,KeepIRM:=True,CreateBookmarks:=wdExportCreateNoBookmarks,_
DocStructureTags:=True,BitmapMissingFonts:=True,UseISO19005_1:=False
End If
Application.ScreenUpdating = True
End Sub
Function GetFolder() As String
Dim oFolder As Object
GetFolder = ""
Set oFolder = CreateObject("Shell.Application").BrowseForFolder(0,"Choose the folder to save in",0)
If (Not oFolder Is Nothing) Then GetFolder = oFolder.Items.Item.Path
Set oFolder = Nothing
End Function