エクセルマクロVBA
ご質問失礼致します。
エクセルVBAマクロを使用したwebスクレイピングについてのご質問になります。
前提
Dim str As Variant ' 取得文字列として定義
' 検索対象A
For Each str In html.getElementsByClassName("クラス名")
Cells(irow, 5).Value = str.innerHTML
Next
上記コードにて、とあるサイトの情報を取得しており、こちらに関しては問題なく動作します。
ですが、同じクラス名が同ページ内に複数存在する為、添え字を使用して下記の通りスクレイピングしようとしました。
' 検索対象A
For Each str In html.getElementsByClassName("クラス名")(0)
Cells(irow, 5).Value = str.innerHTML
Next
添え字(0)を付け加えたのですが、
「実行時エラー438
オブジェクトは、このプロパティまたはメソッドをサポートしていません」
というエラーを受け取ってしまいます。
添え字の付け方は間違っていないと思っているのですが、どこが問題かお分かりになれば教えて頂きたいです。
また、下記の通り.innertextを付け加えたりしましたが、同様の結果となりました。
' 検索対象A
For Each str In html.getElementsByClassName("クラス名")(0).innertext
Cells(irow, 5).Value = str.innerHTML
Next