Приведенный ниже код VBA поможет сохранить каждую страницу документа в виде отдельных файлов PDF.
1. Откройте документ, в котором вы сохраните каждую страницу или отдельные страницы в виде файлов PDF, затем нажмите кнопку Shift + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.
2. В Microsoft Visual Basic для приложений окна, нажмите Вставить > Модуль, скопируйте ниже код VBA в окно модуля и запустите его на выполнение.
3. Укажите папку для записи файлов, выберите начальную и конечные страницы для сохраненя.
Sub
SaveAsSeparatePDFs()
'Updated by Extendoffice 20180906
Dim
I
As
Long
Dim
xStr
As
String
Dim
xPathStr
As
Variant
Dim
xDictoryStr
As
String
Dim
xFileDlg
As
FileDialog
Dim
xStartPage, xEndPage
As
Long
Dim
xStartPageStr, xEndPageStr
As
String
Set
xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
If
xFileDlg.Show <> -1
Then
MsgBox
"Please chose a valid directory"
, vbInformation,
"Kutools for Word"
Exit
Sub
End
If
xPathStr = xFileDlg.SelectedItems(1)
xStartPageStr = InputBox(
"Begin saving PDFs starting with page __? "
& vbNewLine &
"(ex: 1)"
,
"Kutools for Word"
)
xEndPageStr = InputBox(
"Save PDFs until page __?"
& vbNewLine &
"(ex: 7)"
,
"Kutools for Word"
)
If
Not
(IsNumeric(xStartPageStr)
And
IsNumeric(xEndPageStr))
Then
MsgBox
"The enterng start page and end page should be number format"
, vbInformation,
"Kutools for Word"
Exit
Sub
End
If
xStartPage =
CInt
(xStartPageStr)
xEndPage =
CInt
(xEndPageStr)
If
xStartPage > xEndPage
Then
MsgBox
"The start page number can't be larger than end page"
, vbInformation,
"Kutools for Word"
Exit
Sub
End
If
If
xEndPage > ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)
Then
xEndPage = ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)
End
If
For
I = xStartPage
To
xEndPage
ActiveDocument.ExportAsFixedFormat xPathStr &
"\Page_"
& I &
".pdf"
, _
wdExportFormatPDF,
False
, wdExportOptimizeForPrint, wdExportFromTo, I, I, wdExportDocumentWithMarkup, _
False
,
False
, wdExportCreateHeadingBookmarks,
True
,
False
,
False
Next
End
Sub