VBA-抓取<span>文本</span>时出现问题

时间:2019-06-13 11:22:47

标签: html vba

我想从表中抓取一些信息,该表保留了我感兴趣的其他信息。

我已经故意在标签之间保留了非常有用的信息。

特别是让我们假设表结构是这样的:

**ID    TYPE   QTY (40)**

    1     Apple   10
    2     Orange  25
    3     Banana  5

我对“数量总和”列感兴趣,到目前为止,i0ve设置了一个for循环,该循环进入每一行。假设我有几行数据,那么计算时间就成倍增加。

但是我很幸运,可以在“数量标题”旁边找到总和。 问题是我无法直接刮掉那个数量。

我正在寻求帮助以直接刮取“(40)”。

这是它实际上正在工作的代码。

这里是源

<th id="receive-history-quantity" data-func="sum" class="sorting" role="columnheader" tabindex="0" aria-controls="table-receive-history" rowspan="1" colspan="1" style="width: 105px;" aria-label="Quantità: activate to sort column ascending">
<div>Quantità

<span>(6)</span>

</div>
</th>

这是我的“蛮力”代码:

...
HTTP.send
DOC.body.innerHTML = HTTP.responseText

Dim i As Long
Dim j%
For Each tr In DOC.getElementById("table-receive-history").getElementsByTagName("tr")
    For Each th In tr.getElementsByTagName("th")
        If LCase(th.innertext) <> "quantity" Then j = j + 1 Else Exit For
    Next
Next
For Each tr In DOC.getElementById("table-receive-history").getElementsByTagName("tr")
    i = i + tr.getElementsByTagName("td")(j).innertext
Next
Debug.Print j
...

我尝试过类似的事情:

.getelementbyid("table-receive-history").getelementsbytagname("span").(0).innertext

,但根本不起作用。

预先感谢旅行支持。

0 个答案:

没有答案