vba另存打开的word
时间: 2023-10-22 16:05:27 浏览: 249
你可以使用以下代码在 VBA 中另存打开的 Word 文档:
```
Sub SaveAsWordDoc()
Dim doc As Document
Set doc = ActiveDocument
Dim newDoc As Document
Set newDoc = Documents.Add(doc.FullName)
newDoc.SaveAs2 "C:\NewFolder\NewDoc.docx", wdFormatXMLDocument
newDoc.Close
End Sub
```
该代码会在打开的 Word 文档基础上创建一个新文档,将其另存为指定路径下的 .docx 文件,并关闭新文档。你可以根据自己的需要修改代码中的路径和文件名。
相关问题
Word VBA另存为PDF,可选储存位置
以下是一个Word VBA的示例代码,可以将当前Word文档另存为PDF,并允许用户选择储存位置:
```
Sub SaveAsPDF()
Dim fileSaveName As Variant
fileSaveName = Application.GetSaveAsFilename(InitialFileName:=ActiveDocument.Name, _
FileFilter:="PDF Files (*.pdf), *.pdf", Title:="Save As PDF")
If fileSaveName <> False Then
ActiveDocument.ExportAsFixedFormat OutputFileName:=fileSaveName, _
ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:=wdExportOptimizeForPrint, _
Range:=wdExportAllDocument, Item:=wdExportDocumentContent, IncludeDocProps:=True, _
KeepIRM:=True, CreateBookmarks:=wdExportCreateNoBookmarks, _
DocStructureTags:=True, BitmapMissingFonts:=True, UseISO19005_1:=False
End If
End Sub
```
当运行此宏时,会打开一个文件保存对话框,允许用户选择PDF的储存位置和文件名。如果用户取消了保存,则不会创建PDF文件。如果用户选择了保存,Word会将当前文档另存为PDF格式,并将其储存在所选位置。
Word VBA另存为PDF,可选储存位置,另存时可改名,PDF加密
以下是一个Word VBA宏,可以实现另存为PDF并设置储存位置、改名和加密:
```vb
Sub SaveAsPDF()
Dim filePath As String
Dim fileName As String
Dim dlgSaveAS As FileDialog
Set dlgSaveAS = Application.FileDialog(FileDialogType:=msoFileDialogSaveAs)
With dlgSaveAS
.Title = "另存为PDF"
.InitialFileName = ActiveDocument.FullName
.Filters.Clear
.Filters.Add "PDF 文件", "*.pdf"
.FilterIndex = 1
If .Show = -1 Then
filePath = .SelectedItems(1)
fileName = Mid(filePath, InStrRev(filePath, "\") + 1)
fileName = Left(fileName, Len(fileName) - 4) & ".pdf" '更改文件名为PDF格式
filePath = Left(filePath, InStrRev(filePath, "\")) & fileName
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
filePath, ExportFormat:=wdExportFormatPDF, _
OpenAfterExport:=False, OptimizeFor:= _
wdExportOptimizeForPrint, Range:=wdExportAllDocument, _
Item:=wdExportDocumentContent, IncludeDocProps:=True, _
KeepIRM:=True, CreateBookmarks:= _
wdExportCreateNoBookmarks, DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:=False
'PDF加密设置
Set PDFSecurity = CreateObject("AcroExch.PDDoc")
PDFSecurity.Open (filePath)
PDFSecurity.SetSecurity "user password", "owner password", 0 '输入密码即可打开
PDFSecurity.Save 1, filePath
PDFSecurity.Close
MsgBox "保存成功!"
End If
End With
End Sub
```
这个宏会弹出一个文件保存对话框,让用户选择储存位置和文件名。保存为PDF文件后,会调用Acrobat的COM接口来加密PDF文件,输入密码后才能打开PDF文件。如果不需要加密,可以将PDF加密设置部分的代码删除。
阅读全文