AcroExch.AVDoc メソッド一覧

TOP > AcroExch.AVDoc      [...]


一覧

AVDoc オブジェクトは1つの画面表示したPDFファイルに対して文字列の検索や印刷、及びPDFファイルのタイトル変更など、PDFファイル全体の操作を行います。

メソッド 解説
BringToFront 複数のPDFドキュメントを表示している時に、指定したPDFドキュメント(オブジェクト)を画面の最前列に表示します。
ClearSelection 現在の文字選択を解除する。
Close PDFドキュメントを閉じます。同時にPDFドキュメントのインスタンスも閉じます。PDFドキュメントが変更されていた場合の動作(保存、保存しない)も指示します。
FindText 指定されたテキストを見つけて、それが目に見えるようにスクロールして、それを選択状態にします。
※当サイト管理人はこのメソッドの使用を推奨しません。
GetAVPageView AcroExch.AVDocに関連しているAcroExch.AVPageViewオブジェクトを取得します。
GetFrame Rectオブジェクトを取得して、位置とサイズの情報を取得します。
GetPDDoc AcroExch.AVDocに関連しているAcroExch.PDDocオブジェクトを取得します。
GetTitle AVDocオブジェクトで開いているPDFドキュメントのタイトルを取得する。
GetViewMode PDFドキュメントの画面表示モードを表示する。
IsValid AcroExch.AVDocオブジェクトが使用出来るかチェックします。(PDFファイルが使用出来るか、PDF構造上に問題が無いかをチェックします。)
Maximize PDFファイル画面を[最大化]又は[元の戻す(縮小)]表示にします。
Open PDFドキュメント(オブジェクト)を開きます。Acrobatアプリケーションが起動されていれば指定したPDFドキュメントは画面表示されます。Acrobatアプリケーションが起動されて無い時はインスタンス(オブジェクト)のみ作成します。
注意①:このメソッドの前に存在チェック、またはPDFファイルかどうかのチェックする為のロジックが必要です。
注意②:Acrobat v8.1.3とv9.0でPDFが画面表示されない現象が出ている。原因不明。詳細はOpenを見て下さい。
OpenInWindow ユーザによって指定された画面にPDFファイルを開いて、それを表示します。
注意:これは旧バージョン用なので使用しないで下さい。
OpenInWindowEx ウィンドウズハンドルによって指定された画面にPDFファイルを開いて、それを表示します。
注意:解説は不完全状態です。
PrintPages PDFファイルの頁を指定して印刷する。デフォルトのプリンターに印刷される。印刷ダイアログは表示されない。
※「印刷の問題点を解決」参照。
PrintPagesEx PDFドキュメントの印刷範囲ページ等を指定して印刷します。PrintPagesExには、PrintPagesより多くのパラメタがあります。 デフォルトのプリンタ設定で印刷されます。印刷ダイアログは表示されない。
※「印刷の問題点を解決」参照。
PrintPagesSilent どんなダイアログボックスも表示しないで、指定された範囲のページを印刷します。 このメソッドはダイアログボックスを表示しないのを除いたAVDoc.PrintPagesと同じです。 PrintPagesSilentはいつもデフォルトプリンタ設定を使用します。
※「印刷の問題点を解決」参照。
PrintPagesSilentEx どんなダイアログボックスも表示しないで、指定された範囲のページを印刷します。 このメソッドはダイアログボックスを表示しないのを除いたAVDoc.PrintPagesExと同じです。 PrintPagesSilentExには、PrintPagesSilentより多くのパラメタがあります。 PrintPagesSilentExはいつもデフォルトプリンタ設定を使用します。
※「印刷の問題点を解決」参照。
SetFrame PDFドキュメントを表示している画面のサイズと位置を変更する。
SetTextSelection PDFドキュメントの指定範囲(四角形)をテキスト選択します。画面に見える位置とは限りません。
SetTitle PDFファイルのタイトルをセットする。
SetViewMode PDFドキュメントの画面表示モードを変更する。
ShowTextSelect 現在の文字列選択が目に見えるように表示位置を元に戻します。

 

TOPへ

「AcroExch.AVDoc メソッド一覧」への2件のフィードバック

  1. 指定したページを印刷するマクロを書いたのですが、以下の「objAcroAVDoc.PrintPages (1), (3) 」のところで"引数は省略できません"というエラーが発生しますが、その理由が理解できません。

    恐縮ですが、ご教示頂ければと思います。

    Sub ページ指定印刷する()

    'Acrobatオブジェクトの定義&作成
    Dim objAcroPDDoc As New Acrobat.AcroPDDoc
    Dim objAcroAVDoc As New Acrobat.AcroAVDoc
    'excel格納
    Dim obj As Object
    Set obj = ActiveWorkbook.ActiveSheet

    Dim i As Long '行
    Dim Filename As String
    Dim Path As String

    i = 1
    Filename = obj.Range("F7").Value 'PDFのファイル名
    Path = "C:\Users\xxx\Documents\e excel\Acrobat\s 操作対象資料\" & Filename & ".pdf"
    objAcroPDDoc.Open Path 'PDFファイルを表示

    objAcroPDDoc.OpenAVDoc Path 'PDFファイルを表示
    objAcroAVDoc.PrintPages (1), (3) ' 1から3ページを印刷

    End Sub

  2. 吉田さん
    はじめまして。

    AVDoc.PrintPagesは第5引数まで有りますが、全て書かないといけません。
    省略は出来ません。
    エラーメッセージはそれを言っています。

    それと オブジェクトの連携OpenAVDoc の書き方が間違っています。
    以下をよく見てください。

    Sub ページ指定印刷する()

    'Acrobatオブジェクトの定義&作成
    Dim objAcroPDDoc As New Acrobat.AcroPDDoc
    Dim objAcroAVDoc As New Acrobat.AcroAVDoc
    'excel格納
    Dim obj As Object
    Set obj = ActiveWorkbook.ActiveSheet

    Dim i As Long '行
    Dim Filename As String
    Dim Path As String
    Dim lRet As Long '戻り値

    i = 1
    Filename = obj.Range("F7").Value 'PDFのファイル名
    Path = "I:\Adobe PDF\execMenuItem.pdf"
    lRet = objAcroPDDoc.Open(Path) 'PDFファイルを表示

    Set objAcroAVDoc = objAcroPDDoc.OpenAVDoc("")
    lRet = objAcroAVDoc.PrintPages(1, 3, 2, 0, 1) ' 1から3ページを印刷

    '閉じる
    lRet = objAcroAVDoc.Close(1) '未保存で閉じる
    lRet = objAcroPDDoc.Close
    'オブジェクトの強制開放
    Set objAcroAVDoc = Nothing
    Set objAcroPDDoc = Nothing

    End Sub

    lRet で戻り値も見た方がイイです。
    Flase(0)が返った時は失敗しています。
    特にテスト時は失敗がよく返ってきます

    最近、環境を変えたので印刷での動作確認までは出来ませんでした。
    引数の内容がわからない時は悩むより、テストして結果を見た方が早いです。

    解決につながれば幸いです。

コメントを残す

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

CAPTCHA


★ 文章での質問は難しいですよネ。でも、早く解決して、家に帰りたい。


SAMURAI Plugin

コメントをする時は出来れば以下もお願いします。

  • OS名 バージョン
  • Acrobat バージョン
  • ツール(Excel等) バージョン
コメントにサンプルコードを入れる時はコードを全て全角文字列にしてください。コチラで半角に戻します。それでもエラーが回避できない時はコメント下さい。個別に対処します。



お仕事で当サイトを見ている方へ
考え込んだら、ご質問下さい。
一緒に解決策を考えましょう。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください