TOP > AcroExch.App > GetAVDoc [...]
説明
開いているAVDocオブジェクトのリストの中のインデックスからAcroExch.AVDocオブジェクトを取得します。
形式
LPDISPATCH GetAVDoc(long nIndex);
戻り値
- 収録成功時は該当するAcroExch.AVDocオブジェクト。
- 収録失敗時は Nothing。
引数
- 第一引数(long nIndex) : ウィンドウの番号。0から開始する。
動作するバージョン
Version | Adobe Acrobat | 備考 |
---|---|---|
4 | OK | Acrobat 4.0 ※Windows 98SE + Excel 2000 |
5 | OK | Acrobat 5.0.5 |
6 | OK | Acrobat 6.0.3 Pro |
7 | OK | Acrobat 7.0.9 Pro Acrobat 7.1.4 Pro |
8 | OK | Acrobat 8.2.2 Pro |
9 | OK | Acrobat 9.3.2 Extended |
10 | - | Acrobat X (10.1.8) Extended |
11 | - | Acrobat XI (11.0.04) Extended |
- OK = 動作する。
- NO = 動作しない。 戻り値が0を返す。
- - = 未確認。 環境とテスト時間が出来次第、結果を入力します。
サンプル:ExcelのVBA
説明:PDFファイルを2つ画面表示して、2番目に表示したPDFファイルのタイトルをメッセージ表示する。
- 参照設定を事前に行う。
- 以下のサンプルはテスト用です。
F8キーでステップ実行して動作確認します。
001 Sub AcroExch_App_GetAVDoc()
002
003 'Acrobatオブジェクトの定義&作成
004 'Acrobat 4,5,6 の時
005 ' Dim objAcroApp As Acrobat.CAcroApp
006 ' Dim objAcroPDDoc1 As Acrobat.CAcroPDDoc
007 ' Dim objAcroPDDoc2 As Acrobat.CAcroPDDoc
008 ' Dim objAcroAVDoc As Acrobat.CAcroAVDoc
009 ' Dim objAcroAVDoc1 As Acrobat.CAcroAVDoc
010 ' Dim objAcroAVDoc2 As Acrobat.CAcroAVDoc
011 '
012 ' Set objAcroApp = CreateObject("AcroExch.App")
013 ' Set objAcroPDDoc1 = CreateObject("AcroExch.PDDoc")
014 ' Set objAcroPDDoc2 = CreateObject("AcroExch.PDDoc")
015 ' Set objAcroAVDoc = CreateObject("AcroExch.AVDoc")
016 ' Set objAcroAVDoc1 = CreateObject("AcroExch.AVDoc")
017 ' Set objAcroAVDoc2 = CreateObject("AcroExch.AVDoc")
018
019 'Acrobat 7,8,9,10,11 の時
020 Dim objAcroApp As New Acrobat.AcroApp
021 Dim objAcroPDDoc1 As New Acrobat.AcroPDDoc
022 Dim objAcroPDDoc2 As New Acrobat.AcroPDDoc
023 Dim objAcroAVDoc As Acrobat.AcroAVDoc
024 Dim objAcroAVDoc1 As Acrobat.AcroAVDoc
025 Dim objAcroAVDoc2 As Acrobat.AcroAVDoc
026
027 '以降はAcrobat全て共通
028 Dim lRet As Long '戻り値
029 Const CON_PDF1 = "C:\work\Test01.pdf"
030 Const CON_PDF2 = "C:\work\Test02.pdf"
031
032 'Acrobatを起動表示する
033 lRet = objAcroApp.Show '(TEST用)
034
035 'PDFドキュメントを開く
036 lRet = objAcroPDDoc1.Open(CON_PDF1)
037 If lRet = False Then
038 '実行エラー
039 MsgBox "ERR1:ファイルが無い=" & CON_PDF1
040 GoTo AcroExch_App_GetAVDoc_Skip:
041 End If
042 lRet = objAcroPDDoc2.Open(CON_PDF2)
043 If lRet = False Then
044 '実行エラー
045 MsgBox "ERR2:ファイルが無い=" & CON_PDF2
046 GoTo AcroExch_App_GetAVDoc_Skip:
047 End If
048 'テスト確認用に画面表示する
049 objAcroPDDoc1.OpenAVDoc CON_PDF1
050 objAcroPDDoc2.OpenAVDoc CON_PDF2
051
052 Set objAcroAVDoc = objAcroApp.GetAVDoc(0)
053 ' Set objAcroAVDoc = objAcroApp.GetAVDoc(1)
054 If objAcroAVDoc Is Nothing Then
055 MsgBox "実行エラー"
056 Exit Sub
057 Else
058 MsgBox objAcroAVDoc.GetTitle
059 End If
060
061 AcroExch_App_GetAVDoc_Skip:
062 '注意:以下のCloseの順番を変更すると実行エラー
063 lRet = objAcroApp.CloseAllDocs
064 lRet = objAcroPDDoc1.Close
065 lRet = objAcroPDDoc2.Close
066
067 'アプリケーションの終了
068 lRet = objAcroApp.Hide
069 lRet = objAcroApp.Exit
070
071 'オブジェクトの強制開放
072 Set objAcroAVDoc1 = Nothing
073 Set objAcroAVDoc2 = Nothing
074 Set objAcroPDDoc1 = Nothing
075 Set objAcroPDDoc2 = Nothing
076 Set objAcroAVDoc = Nothing
077 Set objAcroApp = Nothing
078
079 End Sub
Highlight:プログラミング言語のソースコードを構文で色分け (GUI編)
テスト結果
補足
- 上記サンプルは確認しやすいようにShowメソッドを使っているが、実際はShowメソッドは必要ではない。
- 引数(インデックス)は0からです。
- 存在しないウインドウのインデックス(番号)を指定しても戻り値が Nothing になるだけです。この時点で実行エラーにはならない。
- ラベル『AcroExch_App_GetAVDoc_Skip』以降の終了処理は順番を1つでも間違えると実行エラーになります。結果としてAcrobatアプリケーションのプロセスがメモリ上に残る事態になりますますので、要注意です。
動作確認環境
- Windows98SE( + WindowsUpdate) +
Acrobat 4.0 + Office 2000 - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 5.0.5 + Office 2003 - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 6.0.3 Pro + Office 2003( + SP3) - WindowsXP Pro( + SP2 + WindowsUpdate) +
Acrobat 7.0.9 Pro + Office 2003 - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 7.1.4 Pro + Office 2003( + SP3) - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 8.2.2 Pro + Office 2003( + SP3) - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 9.3.2 Extended + Office 2003( + SP3)
Adobe Web 解説 URL(英語)v9.1
< 戻る >
ブラウザ画面の文字サイズを変更するショートカットキー
|