用webbrowser控件如何读取代码中表格里的数据并显示
请根据下面的HTML代码帮我分析一下,如果我想用webbrowser控件读取其中的
欠费金额,应该如何查找呢?
最好有具体的完成语句,
要求读出的格式为:(举例如下,不一定代表就是下面代码的数据)
===========================
序号 年度 欠费金额 滞纳金
1 2011 1200.00 23.14
2 2010 800.00 145.70
3 2007 360.00 3689.70
===========================
要完成上述“=”内部的内容的显示,
在vb中如何写代码呢?
主要是要读取部分的代码,其余部分已经完成。
最好是不用循环,直接取出数据,
但数据可能每次取出的HTML代码是不一样的,
如果必须用循环,请给个代码看看,
采纳后,百分相送。
下面的代码是用webbrowser读取出来的。
----------------------
HTML code<TABLE class=printtab width=600><TBODY><TR class=tablabel><TD class=printtd>单位公章</TD><TD class=printtd>打印时间:</TD><TD class=printtd>打印地点:</TD><TD class=printtd>打印人:</TD></TR></TBODY></TABLE><TABLE class=printtab width=600><TBODY><TR><TD><TABLE style="cellspacing: 0; cellpadding: 0" width="100%"><TBODY><TR class=tablabel><TD class=printtd width=60>用户编号:</TD><TD class=printtd width=140>12345678</TD><TD class=printtd width=60>用户名称:</TD><TD class=printtd width=140>李强</TD><TD class=printtd width=60>房屋性质:</TD><TD class=printtd width=140>居民</TD></TR></TBODY></TABLE></TD></TR><TR><TD><TABLE style="cellspacing: 0; cellpadding: 0" width="100%"><TBODY><TR class=tablabel><TD class=printtd width=60>住址:</TD><TD class=printtd width=450>住址省略</TD><TD class=printtd width=60>进户时间:</TD><TD class=printtd width=60>199901</TD></TR></TBODY></TABLE></TD></TR><TR><TD><TABLE style="cellspacing: 0; cellpadding: 0" width="100%"><TBODY><TR class=tablabel><TD class=printtd width=60>公司:</TD><TD class=printtd width=140>第一分公司</TD><TD class=printtd width=60>收费员:</TD><TD class=printtd width=140>张三</TD><TD class=printtd width=60>面积:</TD><TD class=printtd width=140>75.58</TD></TR></TBODY></TABLE></TD></TR><TR><TD><TABLE style="cellspacing: 0; cellpadding: 0" width="100%"><TBODY><TR class=tablabel><TD class=printtd width=60>备注:</TD><TD class=printtd width=600>地址详情;</TD></TR></TBODY></TABLE></TD></TR><TR><TD><TABLE style="cellspacing: 0; cellpadding: 0" width="100%"><TBODY><TR class=tablabel><TD class=printtd>年度</TD><TD class=printtd>应收</TD><TD class=printtd>实收</TD><TD class=printtd>欠费</TD><TD class=printtd>滞纳金</TD><TD class=printtd>欠费合计</TD></TR><TR class=tablabel><TD class=printtd>2011</TD><TD class=printtd>3049.65</TD><TD class=printtd>0.0</TD><TD class=printtd>3049.65</TD><TD class=printtd>0.0</TD><TD class=printtd>3049.65</TD></TR><TR class=tablabel><TD class=Noprint>2010</TD><TD class=Noprint>3049.65</TD><TD class=Noprint>3049.65</TD><TD class=Noprint>0.0</TD><TD class=Noprint>0.0</TD><TD class=Noprint>0.0</TD></TR><TR class=tablabel><TD class=Noprint>2009</TD><TD class=Noprint>3049.65</TD><TD class=Noprint>609.93</TD><TD class=Noprint>0.0</TD><TD class=Noprint>0.0</TD><TD class=Noprint>0.0</TD></TR><TR class=tablabel><TD class=Noprint>2008</TD><TD class=Noprint>3049.65</TD><TD class=Noprint>609.93</TD><TD class=Noprint>0.0</TD><TD class=Noprint>0.0</TD><TD class=Noprint>0.0</TD></TR><TR class=tablabel><TD class=Noprint>2007</TD><TD class=Noprint>2611.29</TD><TD class=Noprint>2611.3</TD><TD class=Noprint>-0.01</TD><TD class=Noprint>0.0</TD><TD class=Noprint>-0.01</TD></TR><TR class=tablabel>
s = 'HTML代码 s = Mid(s, InStr(1, s, "<TD class=printtd>年度</TD>")) s = Left(s, InStr(1, s, "<TD class=printtd>合计</TD>") - 1) s = Replace(s, "<TD class=printtd>", "") s = Replace(s, "<TD class=Noprint>", "") s = Replace(s, "</TR>", "") s = Replace(s, vbCrLf, "") '输出结果 s1 = Split(s, "<TR class=tablabel>") '每一行 For i = 0 To UBound(s1) - 1 s2 = Split(s1(i), "</TD>") '每一列 Debug.Print IIf(i = 0, "序号", i), s2(0), s2(3), s2(4) Next i结果:序号 年度 欠费 滞纳金 1 2011 3049.65 0.0 2 2010 0.0 0.0 3 2009 0.0 0.0 4 2008 0.0 0.0 5 2007 -0.01 0.0 6 2006 -0.01 0.0
[解决办法]
s = 'HTML代码 s = Mid(s, InStr(1, s, "<TD class=printtd>年度</TD>")) s = Left(s, InStr(1, s, "<TD class=printtd>合计</TD>") - 1) s = Replace(s, "<TD class=printtd>", "") s = Replace(s, "<TD class=Noprint>", "") s = Replace(s, "</TR>", "") s = Replace(s, vbCrLf, "") '输出结果 s1 = Split(s, "<TR class=tablabel>") '每一行 For i = 0 To UBound(s1) - 1 s2 = Split(s1(i), "</TD>") '每一列 If i = 0 Then Debug.Print "序号", s2(0), s2(3), s2(4) ElseIf Val(s2(3)) > 0 Then Debug.Print i, s2(0), s2(3), s2(4) End If Next i序号 年度 欠费 滞纳金 1 2011 3049.65 0.0