• ベストアンサー

VBでIEのメニューバーの操作法をご教示ください

VBでIEを起動し何回かページを移動して表示しています。その時、IEのメニューバーの「ファイル(F)」ボタンやその「ファイル(F)」ボタン押下によるブルダウン中の「印刷(P)」ボタンを押下する方法をご教示して頂きたくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

>私もタイミングによるものと思い、暫定的に印刷の前に30秒、3分とWaitするようにしましたが改善されません。 >他に問題があるのでしょうか? 先の質問でも言ったかと思うのですが Private Sub IE_DocumentComplete(ByVal pDisp As Object, URL As Variant) If CStr(URL) <> myURL Then Exit Sub End If のようにしてDocumentComplete イベント内で指定のURLが表示されたどうかを確認してから処理をしないと...。 この辺の基本的な事が理解できないと先に進む事は無理かとおもいますよ。 >Waitするようにしましたが改善されません。 これもどのようにしているかで、本当に待てているのか疑わしいです。 それより、このような待ちは色々問題があり推薦されません。

isunsun
質問者

お礼

ご指摘のとおりDocumentCompleteのイベントを使用してURLの表示を確認して印刷するようにしまう。 VB、Webブラウザの基礎、基本が出来ていないため悪戦苦闘しています。 度々のご教示ありがとうございます。

その他の回答 (2)

回答No.2

>最後のページを印刷するには未だ何か必要なようです。 単に、例によって表示が完了する前に、印刷処理を行っているからでは。

isunsun
質問者

お礼

私もタイミングによるものと思い、暫定的に印刷の前に30秒、3分とWaitするようにしましたが改善されません。 他に問題があるのでしょうか?

回答No.1

現在表示中のURLを印刷したいのならこんな感じでできますよ。 IE.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER 詳しいコードが必要なら、上記中の定数をキーに検索すればみつかりますよ。

isunsun
質問者

お礼

早速回答頂きありがとうございます。 教えて頂いた1行を追加するだけで印刷することができました。 しかし、その印刷の内容は最後に表示されたアクティブ画面のものではなく、一つ前のページのものです。 最後のページを印刷するには未だ何か必要なようです。

関連するQ&A