Office関連

IEを操作するVBAマクロ実行中にオートメーションエラーが発生する場合の対処法

下記コードのような、Internet Explorerを操作する簡単なマクロを実行したところ、ReadyStateプロパティの値を取得しようとした時点でシステム エラーやオートメーション エラーが発生しました。

Public Sub Sample()
  Const READYSTATE_COMPLETE = 4
  
  With CreateObject("InternetExplorer.Application")
    .Visible = True
    .Navigate "https://ja.wikipedia.org/wiki/"
    Do While (.Busy = True) Or (.ReadyState <> READYSTATE_COMPLETE)
      Sleep 100
    Loop
    Stop
  End With
End Sub

システム エラーです: &H80010108 (-2147417848) 起動されたオブジェクトはクライアントから切断されました。

実行時エラー ‘-2147417848 (80010108)’:

オートメーション エラーです。
起動されたオブジェクトはクライアントから切断されました。

インターネットオプションを確認したところ、“目的のURLが「信頼済みサイト」に登録されていたことが原因”で、外したらすぐにエラーが発生しなくなりました。

何年か前にも同じことが原因で引っ掛かったことがありましたが、すっかり忘れていました・・・。
これからは忘れないように、対応策をメモしておきます。

関連Webページ

上記関連Webページを見る限り、「信頼済みサイト」の設定でも上手くいかない場合は、

  1. 「管理者権限」で実行する。
  2. 「保護モードを有効にする」をオン・オフする。

といった方法も試すと良さそうです。

関連記事

  1. Office関連

    選択したセルに連続行番号を振るWordマクロ

    Wordでマニュアルを作成するとき等、表の中で連番を振りたいときがよく…

  2. Office関連

    カウントダウンタイマーを作成するPowerPointマクロ

    大分前に書いた記事について問い合わせがありましたので、マクロを作成しな…

  3. Office関連

    Office 2013 カスタマープレビュー版の「Spy Utility」

    たまたま見つけたWebページ「Office2013のデバッグ用ツールが…

  4. Office関連

    マクロで実行したいコマンドのIDを調べる簡単な方法

    MSDN フォーラムに下記質問がありました。・Excel-VB…

  5. Office関連

    [Excel Services ECMAScript]タイマーでグラフを描画する。

    タイマーで特定のセルの値を増やしていき、それに合わせてグラフを描画して…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP