Acrobat/DDE:DocGoTo

説明

指定されたページに移動します。

 

形式

[DocGoTo(char* fullPath, long pageNum)]

 

引数

fullPath
[char*]
頁移動するPDFファイルのフルパス
注意:パス中に空白があるときは注意する。
pageNum
[long]
移動するページ番号。0が開始ページ番号。
つまり表紙(1頁)に移動したければ、0を指定する。

 

戻り値

true false以外。
false fullPathによって指定されたPDFドキュメントが存在しない。
又は失敗しました。

注)ExcelのVBAではDDE命令の発信ステートメント上で、戻り値を取得出来ません。

 

 


サンプル:ExcelのVBA

 

PDFドキュメントを開いて、3ページ目と11ページ目を移動表示します。

  • Excel VBA開発環境をF8キーでステップ実行して動作確認します。

 

Sub DDE_DocGoTo()

    Dim lChanNo As Long ‘DDEチャンネル番号
    ‘パスに空白が入った時用にダブル引用符を付加
    Const CON_PDF_PATH = """E:¥test01.pdf"""
    
    ‘Acrobatアプリケーション起動。どちらもテストOK。
    Shell "C:¥Program Files¥Adobe¥Reader 9.0¥Reader¥AcroRd32.exe"
    ‘Shell "C:¥Program Files¥Adobe¥Acrobat 8.0¥Acrobat¥Acrobat.exe"
    ‘DDEチャンネルのオープン
    lChanNo = DDEInitiate("Acroview", "Control")
    
    ‘事前にPDFファイルのオープンが必要
    DDEExecute lChanNo, "[DocOpen(" & CON_PDF_PATH & ")]"
    ‘3頁に移動し、画面表示する。
    DDEExecute lChanNo, "[DocGoTo(" & CON_PDF_PATH & ",2)]"
    ‘11頁に移動し、画面表示する。
    DDEExecute lChanNo, "[DocGoTo(" & CON_PDF_PATH & ",10)]"
    ‘Acrobatアプリケーション終了
    ‘これをしないとAcrobatプロセスが残る
    DDEExecute lChanNo, "[AppExit()]"
    ‘DDEチャネルを閉る
    DDETerminate lChanNo

End Sub

 

補足

  • 事前にDocOpenで画面表示してからDocGoToすると頁移動する。

 

動作確認環境

  • WindowsXP + SP3 + WindowsUpdate
    Adobe Acrobat Pro 8.1.4 + Office Pro 2003
    Adobe Acrobat Reader 9.1.0 + Office Pro 2003

 

Adobe社の解説ページ : 英語

以下がAdobe社のAcrobat DDEの解説ページです。表示には時間がかかります。
http://livedocs.adobe.com/acrobat_sdk/9/Acrobat9_HTMLHelp/IAC_API_DDE_Messages.104.9.html

 

TOPへ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA