Dim IE As New ShDocVW.InternetExplorer
IE.Visible = True
IE.Navigate("C:\Users\m0180kb\desktop\test.html")
Do Until IE.Busy = False
Loop
IE.Document.All("testField").Value = "Testing" 'This line causes the error
IE.Close
を操作するとき、「アクセスが拒否されましたが、」エラーです:実行時エラー「-2147024891(80070005)」:アクセスが拒否されました。SHDOCVW.DLLのInternetExplorerオブジェクト - ここではローカルの.htmlファイルに
詳細情報:Excel VBAでコーディングが行われています。ファイルパスの代わりに有効なURLを使用すると動作します。ブラウザウィンドウにhtmlファイルが読み込まれると、InternetExplorerオブジェクトに関連付けられているすべてのオブジェクトとプロパティは、「アクセスが拒否されました」というエラーによって無用にレンダリングされます。
私は、テキストストリームを使って.htmlコードを生成することを考えました。それは私のフォームフィールドを操作することができますが、私はまだ.... ShDocVW.dllを介してHTMLフォームを提出する必要が....あなたは....それはアクセス拒否エラーの結果を推測した。
このエラーを回避する方法がわかっている場合や、Excelのvbaを使用してローカルのhtmlファイルを操作するためのアクセス権を与えるレジストリエントリまたはセキュリティ設定がわかっている場合にお知らせください。これは私
Option Explicit
Sub Sample()
Dim IE As Object, ieDoc As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate ("C:\Users\m0180kb\desktop\test.html")
Do While IE.ReadyState <> 4: DoEvents: Loop
Set ieDoc = IE.Document
ieDoc.getElementById("testField").Value = "Testing"
'IE.quit
End Sub
HTMLページの「アクティブコンテンツ」(スクリプトなど)はありますか? "ウェブのマーク"のためのGoogle - 多分それはあなたをここで助けるでしょう。例:http://www.markoftheweb.com/ –
ウェブのマークはjavascriptを実行することを許可しましたが、それは私の主な問題ではありませんでした。良いヒントありがとう、ありがとう。しかし、私はまだ "アクセスが拒否されました"というエラーがあります。 –