|
工作需要,对一些文档进行整理,需要批量印刷,但在交稿前需要对多个文档进行合计一下总共多少页。参照着版主的代码就自己略加修改了一下,拿出来与大家分享,或许对资料整理等岗的人有些帮助。
Option Explicit
Sub Example() '此代码功能为列出指定文件夹中所有选取的WORD文件全路径名
Dim myDialog As FileDialog, oDoc As Document, oSec As Section
Dim oFile As Variant, myRange As Range
Dim PagesNumber, NumSum
On Error Resume Next
Application.ScreenUpdating = False
'定义一个文件夹选取对话框
PagesNumber = 0
NumSum = 0
Set myDialog = Application.FileDialog(msoFileDialogFilePicker)
With myDialog
.Filters.Clear '清除所有文件筛选器中的项目
.Filters.Add "所有 WORD 文件", "*.doc", 1 '增加筛选器的项目为所有WORD文件
.AllowMultiSelect = True '允许多项选择
If .Show = -1 Then '确定
For Each oFile In .SelectedItems '在所有选取项目中循环
Set oDoc = Word.Documents.Open(FileName:=oFile, Visible:=False)
For Each oSec In oDoc.Sections '文档的节中循环
PagesNumber = oDoc.Content.Information(wdNumberOfPagesInDocument)
NumSum = PagesNumber + NumSum
Next
oDoc.Close True
Next
End If
End With
Application.ScreenUpdating = True
MsgBox "你所选择文档共有" & NumSum & "页", vbOKOnly + vbInformation, "MS WORD提示"
End Sub |
|