1
制約のため、Excelのvbaで醜いHTMLを解析する必要があります。 HTMLの問題は要素IDがないことです。私は、それぞれがいくつかの行を持つ多くのラベルのないテーブルを持つページを持っています。私が構築できる唯一のことは、私が引き出す必要があるセルの1つに識別子があることです。 ID「xtu_id」がテーブルの行のセルに値として表示されるたびに、その行からデータを取得する必要があります。だから、次のようになります。excel vbaでHTMLを解析する際にエラーが発生する
<tr>
<td>
col1
</td>
<td>
col2
</td>
<td>
xtu_id
</td>
<td>
col4
</td>
</tr>
今私はxtu_idは、この行に存在して見ていることに、私は、Excelシートにその行のすべてのセルをダンプしたいです。ここで私は他のstackoverflowの記事を読んでから使用したものである:
Sub CommandButton1_Click()
Dim appIE As InternetExplorerMedium
Set appIE = New InternetExplorerMedium
With appIE
.Navigate "https://my_website"
.Visible = True
End With
Do While appIE.Busy Or appIE.ReadyState <> 4
DoEvents
Loop
Set mydata = appIE.Document.getElementsByTagName("tr")
For Each e In mydata
For Each c In e
If c.Cells().innerText Like "xtu_id" Then
myValue = c.Cells().innerText
MsgBox (myValue)
End If
Next c
Next e
Set appIE = Nothing
End Sub
このコードは、私が文[各...のために]に到達するまで、私は悩み」を検索するために、各行の各セルをループを持っている作品xtu_id "テキスト。これを行う方法に関するアイデア?
おかげで、私はスワップことで、値を取得していないが、コードが出てエラーではありませんでした。おそらく私のif文が真ではない – barker
行単位でデバッグをしましたか? [回答](http://stackoverflow.com/questions/43458256/retreiving-td-tag-from-table-on-website-using-vba-and-put-into-excel/43459103#43459103)私は以前に提供した助けるかもしれない。 –
助けてくれてありがとうScott、私はc.innertextのe.innertextを入れ替えてセルの値を引っ張り、私が何を得たのかを知りました。あなたの答えは正しい、それは私が引っ張ってみたい文字列が明確でないために私のせいだった。再度、感謝します! – barker