用excel vbaparsingHTML时出错

所以由于约束,我需要用excel vbaparsing一些丑陋的html。 HTML的问题是它没有元素ID。 我有一个页面,有许多无标签的表,每个都有几行。 我可以build立的唯一的事情是,我需要一个单元格中有一个标识符。 每当ID“xtu_id”作为一个表格的一行中的一个单元格中的值出现,我想从该行拉取数据。 所以看起来像这样:

<tr> <td> col1 </td> <td> col2 </td> <td> xtu_id </td> <td> col4 </td> </tr> 

现在,我看到xtu_id存在于这一行,我想转储该行的所有单元格到Excel表单。 这是我从阅读其他stackoverflowpost中使用的:

 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 

这个代码的工作原理,直到我find[for each …]语句,我无法遍历每行的每个单元格来search“xtu_id”文本。 任何想法如何做到这一点?

尝试这个:

 For Each c In e.Cells If c.innerText Like "xtu_id" Then myValue = e.innerText MsgBox (myValue) End If Next c