TOP > AcroExch.PDPage > *
説明
ページに関連しているAcroExch.PDDocオブジェクトを取得します。
形式
LPDISPATCH GetDoc();
引数
- 無し。
戻り値
- AcroExch.PDDocオブジェクト。
動作するバージョン
| Acrobat | 動作 | 備考 |
|---|---|---|
| 4 | ― | Acrobat 4.0 ※Windows 98SE + Excel 2000 |
| 5 | ― | Acrobat 5.0.5 |
| 6 | ― | Acrobat 6.0.3 Pro |
| 7 | ― | Acrobat 7.0.9 Pro Acrobat 7.1.4 Pro |
| 8 | OK | Acrobat 8.1.2 Pro |
| 9 | ― | Acrobat 9.3.2 Extended |
| 10 | ― | Acrobat X (10.1.8) Extended |
| 11 | ― | Acrobat XI (11.0.04) Extended |
- OK:動作します。
- NO:動作しない。 戻り値が0を返します。
- ―:未確認。
サンプル:ExcelのVBA
PDPageからPDDocオブジェクトを取得し、その全頁数をチェックします。
- 事前に参照設定をします。
- F8キーでステップ実行しながら動作確認します。
- いいサンプルとは言えないが・・。
001 Sub AcroExch_AcroPDPage_GetDoc()
002
003 Debug.Print "Test_AcroPDPage_GetDoc:" & Now
004 Dim objAcroApp As New Acrobat.AcroApp
005 Dim objAcroAVDoc As New Acrobat.AcroAVDoc
006 Dim objAcroPDDoc As New Acrobat.AcroPDDoc
007 Dim objAcroPDDoc2 As New Acrobat.AcroPDDoc
008 Dim objAcroPDPage As Acrobat.AcroPDPage
009 Dim objAcroAVPageView As Acrobat.AcroAVPageView
010 Dim lRet As Long '戻り値
011 Dim i As Long '添え字
012 Dim lPage As Long 'ページ数
013
014 'Acrobatを起動表示する
015 lRet = objAcroApp.Show
016 '画面にPDFドキュメントを表示する。
017 lRet = objAcroAVDoc.Open("E:\Test01.pdf", "")
018
019 Set objAcroAVPageView = objAcroAVDoc.GetAVPageView()
020 Set objAcroPDDoc = objAcroAVDoc.GetPDDoc()
021 lPage = objAcroPDDoc.GetNumPages - 1
022 Debug.Print "全頁数=" & lPage + 1
023
024 For i = 0 To lPage
025 'ページ移動する。
026 lRet = objAcroAVPageView.Goto(i)
027 '表示されているページのAcroPDPageを得る
028 Set objAcroPDPage = objAcroAVPageView.GetPage()
029 '別のAcroPDDocオブジェクトを取得する
030 Set objAcroPDDoc2 = objAcroPDPage.GetDoc()
031 Debug.Print i & " 全頁数=" & objAcroPDDoc2.GetNumPages
032 Next i
033
034 'PDFファイルを保存しないで閉じる
035 lRet = objAcroPDDoc.Close
036
037 'Acrobatを閉じる
038 lRet = objAcroApp.Hide
039 lRet = objAcroApp.Exit
040
041 'オブジェクトを強制解放する
042 Set objAcroAVDoc = Nothing
043 Set objAcroPDPage = Nothing
044 Set objAcroAVPageView = Nothing
045 Set objAcroPDDoc = Nothing
046 Set objAcroPDDoc2 = Nothing
047 Set objAcroApp = Nothing
048
049 End Sub
実行結果
以下はExcelのVBA開発環境のイミディエイトウィンドウの内容です。
Test_AcroPDPage_GetDoc:2008/07/24 13:02:20
全頁数=34
0 全頁数=34
1 全頁数=34
2 全頁数=34
3 全頁数=34
4 全頁数=34
5 全頁数=34
6 全頁数=34
7 全頁数=34
8 全頁数=34
9 全頁数=34
10 全頁数=34
11 全頁数=34
12 全頁数=34
13 全頁数=34
14 全頁数=34
15 全頁数=34
16 全頁数=34
17 全頁数=34
18 全頁数=34
19 全頁数=34
20 全頁数=34
21 全頁数=34
22 全頁数=34
23 全頁数=34
24 全頁数=34
25 全頁数=34
26 全頁数=34
27 全頁数=34
28 全頁数=34
29 全頁数=34
30 全頁数=34
31 全頁数=34
32 全頁数=34
33 全頁数=34
※正常処理です。
補足
- F8キーでステップ実行し、各メソッドによりどのような動きをするかよく観察すること。
- 上記結果から、PDPageオブジェクト(ページ情報)からPDDocオブジェクト(PDFドキュメント情報)への逆連携が可能と分かります。
Adobe Web 解説
OLE Automation / AcroExch.PDPage / GetDoc (公式サイト・英語)
動作確認環境
- WindowsXP Pro( + SP3) +
Acrobat 8.1.2 Pro + Office 2003 + MicrosoftUpdate
< 戻る >