|
楼主 |
发表于 2020-10-16 20:15
|
显示全部楼层
原来好用的,现在为啥不好用了?
本帖最后由 五指山888 于 2020-10-17 22:08 编辑
老师能看看这个为啥不能抓取数据了?Sub 东财03版1() '
't = Timer '开始记时2.66-3.69秒
'Application.ScreenUpdating = False
Sheets("Sheet1").Select
With CreateObject("Msxml2.XMLHTTP") 'CreateObject("Microsoft.XMLHTTP")
.Open "GET", "http://hqdigi2.eastmoney.com/EM_Quote2010NumericApplication/index.aspx?type=s&sortType=C&sortRule=-1&pageSize=5000&page=1&jsName=quote_123&style=33&_g=" & Rnd(), False
On Error Resume Next
.send
v = .responsetext
End With
strText = Split(Split(v, "[""")(1), """]")(0)
h = [a10000].End(xlUp).Row + 1
Range("a3:ah" & h) = ""
' Cells.ClearContents 'Sheet1.=限制在本工作簿,不能跨工作簿,跨工作簿要去掉此句。
Dim crr() As String
crr = Split(strText, """,""")
' arr = Application.Transpose(crr) '卡住了?
[a2].Resize(1, 38) = Split("序号 代码 名称 昨收 今开 最新价 最高 最低 金额 总手 涨跌额 涨跌幅 均价 振幅% 委比% 委差 现手 内盘 外盘 不明1 不明2 不明3 量比 换手% 不明4 不明5 最新价 卖出价 更新时间 不明6 总股本(亿) 总市值(亿) 发行价(亿) 流通市值(亿) 最新合并 涨幅% 最高总市值(亿) 最低总市值(亿) ")
For i = 0 To UBound(crr)
brr = Split(crr(i), ",")
' [A2].Resize(1, 38).Offset(i, 0) = brr '
[a3].Resize(1, 38).Offset(i, 0) = brr '
Next
Dim arr(), f, l
m = Range("b65536").End(xlUp).Row
arr = Range("a3:az" & m)
Range("ah3:al" & m).ClearContents '清除内容
Range("ac3").Select
h = [a10000].End(xlUp).Row
[a3] = 1: Range("a3:a" & h).DataSeries
'格式整理d
'Application.ScreenUpdating = True
'MsgBox "更新完成;共用时" & Format(Timer - t, "0.00秒。")
End Sub
|
评分
-
1
查看全部评分
-
|