我正在尝试将innertext拉到<TD>
标签包围M118。我试图改变这个:
Range("J" & (ActiveCell.Row)) = IE.Document.getelementbyid("ctl05_BasicdatagridInventoryLocations").getelementbyclass("gridItem").innerText
找到表和行是否有我可以在innertext之前添加的东西来选择我想要拉出的<TD>
?
我正在使用的HTML是:
<table class="grid" cellspacing="0" cellpadding="1" rules="all" border="1" id="ctl05_BasicdatagridInventoryLocations" style="border-style:Solid;width:100%;border-collapse:collapse;">
<tr class="gridPager" align="left">
<td colspan="7"><span>1</span></td>
</tr>
<tr class="gridHeader">
<td>Quantity</td><td>Class</td><td>UOM</td><td>Warehouse</td><td>Location</td><td>Last Cycle Count</td><td> </td>
</tr>
<tr class="gridItem" onmouseover="cc(this, true);" onmouseout="cc(this, false);">
<td>5</td><td>NEW</td><td>EA</td><td>Rig Warehouse</td><td>M118</td><td>11 Sep 2013</td><td></td>
</tr>
</table>
答案 0 :(得分:1)
你可以使用它(在IE10中测试):
Sub sof20167953GetIeWebpage()
Dim objIe As Object
Dim xobj
Set objIe = CreateObject("InternetExplorer.Application")
objIe.Visible = True
'
objIe.navigate "http://www.example.com/MyTable.html"
'
While (objIe.Busy Or objIe.READYSTATE <> 4)
DoEvents
Wend
'
Set xobj = objIe.Document.getElementById("ctl05_BasicdatagridInventoryLocations").getElementsByClassName("gridItem").Item(0)
Set xobj = xobj.getElementsByTagName("td").Item(4)
'
Range("J" & (ActiveCell.Row)) = xobj.innerText
'
Set xobj = Nothing
'
objIe.Quit
Set objIe = Nothing
End Sub
请注意: