エクセルVBAでwebページの特定の箇所のデータを取得したい 削除
Message#2 2014年10月21日(火)07時42分 From: 管理人 |
全体のHTMLソースを見てみないとなんともいえませんが、現在の情報だけで抽出することにします。 ソースを見ると金額のclassに「price」が品番のclassに「itemNo」が設定されています。 これをキーワードに抽出すると以下のようになります。 Sub sample() Dim objIE As InternetExplorer '該当するサイトURLをセットしてIEを起動 Call ieView(objIE, "★URL★") i=2 For Each objTag In objIE.document.getElementsByTagName("p") With objTag If InStr(.outerHTML, tagStr) > 0 Then cells(i, 1) = .innerText i = i + 1 Exit For End If End With Next i=2 For Each objTag In objIE.document.getElementsByTagName("p") With objTag If InStr(.outerHTML, tagStr) > 0 Then cells(i, 2) = .innerText i = i + 1 Exit For End If End With Next End Sub 内容としては「getElementsByTagName」でpタグだけを抽出します。 その中にキーワードが含まれているエレメントがあった場合は、そのエレメントの中の文字列だけを抽出しています。 一応cells(i,1),cells(i,2)で設定していますので、A列に金額がB列に品番が抽出できるはずです。 データ抽出については、以下を参考にしてください。 http://www.vba-ie.net/element/document-all.html |
上のメッセージを削除します。
よければパスワードを入力し、削除ボタンをクリックしてください。