ウソのようなホントの話で、
VBAでIEから.innerHTMLで取得したHTMLは元ソースと違う。
Option Explicit Sub ie_test() 'IEの表示をテストする。 'IEの起動 Dim objIE As Object '変数を定義します。 Set objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成します。 objIE.Visible = True '可視、Trueで見えるようにします。 '処理したいページを表示します。 objIE.Navigate "http://www.yahoo.co.jp/" '.Navigate メソッドで Yahooを表示する。 'ページの表示完了を待ちます。 While objIE.ReadyState <> 4 Or objIE.Busy = True '.ReadyState <> 4の間まわる。 DoEvents '重いので嫌いな人居るけど。 Wend 'ページが表示されたので、表示された文章に対して、処理を行います。 MsgBox Left(objIE.document.body.innerHTML, 255) End Sub
↑こんな感じで、タグが
<br>→<BR>とか<h1>が<H1>など、親切に?変換してくれます。
これに何度ダマされたことか・・・