总和内部文本 VBA IE



我得到了几个数字,我想提出总和,而不是事后总结

MsgBox ie.document.getElementsByClassName("post_click_or_post_view_revenue")(0).innertext
MsgBox ie.document.getElementsByClassName("post_click_or_post_view_revenue")(1).innertext
MsgBox ie.document.getElementsByClassName("post_click_or_post_view_revenue")(2).innertext
MsgBox ie.document.getElementsByClassName("post_click_or_post_view_revenue")(3).innertext

我想做这样的事情

MsgBox Sum(ie.document.getElementsByClassName("post_click_or_post_view_revenue").innertext)

这可能吗?

您必须遍历与您的类匹配的一系列标签,在进行过程中将.innerText转换为实际数字(如果仍然不是数字,则看起来像数字的文本)。

dim dTotal as double, l as long, e as long
with ie.document
    l = .getElementsByClassName("post_click_or_post_view_revenue").length - 1
    for e = 0 to l
        if isnumeric(trim(.getElementsByClassName("post_click_or_post_view_revenue")(e).innertext)) then _
            dTotal = dTotal + CDbl(.getElementsByClassName("post_click_or_post_view_revenue")(e).innertext)
    next e
end with
msgbox "The total is " & dTotal

现在,这将遍历具有匹配类名的所有元素。如果您只想从 0 转到 3,请使用 for e = 0 to 3 。只要确保实际上有四个,然后再进入循环要求所有四个。

最新更新