如何用VBA提取网上的表格数据进Excel
跪求这里的高人帮忙写一个vba,不然超过一万个网页一个一个copy&paste进excel会死人的。小弟已这样一个一个copy2个月了。在http://www.nowgo...
跪求这里的高人帮忙写一个vba,不然超过一万个网页一个一个copy & paste 进 excel 会死人的。小弟已这样一个一个copy 2个月了。
在 http://www.nowgoal.com/detail/561532.html ,如何提取如图的表格,因为想要提取超过一万个表格,一个一个copy&paste进excel很费时,我试过用excel的web
query,并且把它录制成macro,但提取一个table都需要等很久,而且常常造成excel死机。
我只是要表格静态的数据,并不需要如web query般每过一分钟会自动更新,也不需要web的format,就像从网上copy数据然后paste进excel
as unicode text 就可以了。
另一个问题是进球和谁先开球是用图标标示的,当提取进excel时能不能把它变成某个字符比如:score或start kick。
谢谢!我已没有财富无法悬赏了,请见谅。 展开
在 http://www.nowgoal.com/detail/561532.html ,如何提取如图的表格,因为想要提取超过一万个表格,一个一个copy&paste进excel很费时,我试过用excel的web
query,并且把它录制成macro,但提取一个table都需要等很久,而且常常造成excel死机。
我只是要表格静态的数据,并不需要如web query般每过一分钟会自动更新,也不需要web的format,就像从网上copy数据然后paste进excel
as unicode text 就可以了。
另一个问题是进球和谁先开球是用图标标示的,当提取进excel时能不能把它变成某个字符比如:score或start kick。
谢谢!我已没有财富无法悬赏了,请见谅。 展开
4个回答
展开全部
理论上可行.
因为表中的这些数据可以直接读取网页源代码获得.
明天出差没时间,后天我帮你想想办法.但是没法作保证,所以你的工作还是先照旧.
对于有挑战性的问题,我们从来不在乎财富值.
Sub Hang_Seng_Indexes()
Cells(1, 2) = "Match Stats"
On Error Resume Next '
With CreateObject("internetexplorer.application")
.Visible = True
.Navigate "http://data.nowgoal.com/detail.aspx?id=561533"
Do Until .ReadyState = 4
DoEvents
Loop
k = 0
p = 0
n = Range("b65536").End(xlUp).Row
Set r = .Document.All.tags("td")
For i = 0 To r.Length
If k = 1 Then
n = n + 1
rw = n \ 3 + 2
p = p + 1
s = (p - 1) Mod 3
Cells(rw, s + 1) = r(i).innerText
End If
If Trim(r(i).innerText) = "Match Stats" Then k = 1
Next i
.Quit
End With
End Sub
试试看,如果要自动持续工作,把网页链接做个变量就行了。
因为表中的这些数据可以直接读取网页源代码获得.
明天出差没时间,后天我帮你想想办法.但是没法作保证,所以你的工作还是先照旧.
对于有挑战性的问题,我们从来不在乎财富值.
Sub Hang_Seng_Indexes()
Cells(1, 2) = "Match Stats"
On Error Resume Next '
With CreateObject("internetexplorer.application")
.Visible = True
.Navigate "http://data.nowgoal.com/detail.aspx?id=561533"
Do Until .ReadyState = 4
DoEvents
Loop
k = 0
p = 0
n = Range("b65536").End(xlUp).Row
Set r = .Document.All.tags("td")
For i = 0 To r.Length
If k = 1 Then
n = n + 1
rw = n \ 3 + 2
p = p + 1
s = (p - 1) Mod 3
Cells(rw, s + 1) = r(i).innerText
End If
If Trim(r(i).innerText) = "Match Stats" Then k = 1
Next i
.Quit
End With
End Sub
试试看,如果要自动持续工作,把网页链接做个变量就行了。
展开全部
哎~~繁重的工作的确令人同情!
不过,怕是没几个人回来回答你的问题。。
不是因为你没有财富悬赏,而是你的问题需要一定的专业只是和时间,
你要知道,高科技这玩意可比时间宝贵的多,
何况,你的问题显然不是个人爱好才问的,你也是工作需要,
所以,除非你出RMB悬赏,我估计没人来给你答案了。。。
不过,怕是没几个人回来回答你的问题。。
不是因为你没有财富悬赏,而是你的问题需要一定的专业只是和时间,
你要知道,高科技这玩意可比时间宝贵的多,
何况,你的问题显然不是个人爱好才问的,你也是工作需要,
所以,除非你出RMB悬赏,我估计没人来给你答案了。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个要搞采集,完了以后写入EXCEL.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个很简单。做一个连接就行。但是因为没有分,所以俺就不发具体的过程图出来 。奸笑中……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询