ttt = Timer
Dim HTMLsourcecode, Table, Clipboard As Object, stockID As String, URL As String, URL_a As String
Set HTMLsourcecode = CreateObject("htmlfile")
Set Clipboard = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
stockID = Sheets("工作表1").Cells(3, 3)
URL = "https://goodinfo.tw/StockInfo/StockList.asp?SHEET=現股當沖&MARKET_CAT=熱門排行&INDUSTRY_CAT=現股當沖張數"
URL_a = "https://goodinfo.tw/StockInfo/StockList.asp?"
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "POST", URL, False
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.setRequestHeader "Referer", URL_a
.setRequestHeader "Cache-Control", "no-cache"
.setRequestHeader "Pragma", "no-cache"
.setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"
.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
.send
HTMLsourcecode.body.innerhtml = convertraw(.ResponseBody)
Set Table = HTMLsourcecode.getelementbyid("divStockList")
If Table.innertext = "查無資料" Then
Sheets("工作表1").Cells(2, 3) = "查無資料"
Exit Sub
End If
With Clipboard
.SetText Table.innerhtml
.PutInClipboard
End With
With Sheets("工作表1")
.Select
.Cells.Clear
.Cells(1, 1).Select
.PasteSpecial NoHTMLFormatting:=True
.Columns.AutoFit
'.Cells(1, 1) = Split(HTMLsourcecode.all.tags("table")(53).innertext, " ")(1)
'.Cells(2, 1).Select
'MsgBox .Cells(1, 1) & "下載時間" & Round(Timer - ttt, 2) & "秒", vbOKOnly, "Report"
End With
End With
Set HTMLsourcecode = Nothing
Set Table = Nothing
Set Clipboard = Nothing
End Sub
怎貼出來的”排名”代號”及”名稱”在後面又會再重複一次?
然後又發現用
Set Table = HTMLsourcecode.getelementbyid("divStockList")
就不會有這種情形?無法理解,所以想請你指導一下,謝謝。
排代號名稱市股價成交漲跌漲跌成交成交額當沖 現股 現股當沖買進額當沖賣出額當沖資券
名場日期價幅張數(百萬)日期當沖當沖率買進額當沖率賣出額當沖率總盈虧當沖
張數(%)(百萬)(%)(百萬)(%)(萬元)(%)
16153嘉聯益市5月10日56.60.10.1840,2302,2605月9日47,840612,65460.92,66161654
22353宏碁市5月10日23.70072,5141,7465月9日35,57439.283239.183739.4526
32313華通市5月10日33.80.61.8136,1661,2285月9日33,96947.81,13947.71,14147.8152
46182合晶櫃5月10日53.511.948,1932,5235月9日33,01645.71,76145.71,75745.6-475
53016嘉晶市5月10日46.22.555.8425,1721,1355月9日25,98356.91,12556.91,12957.1446
63090日電貿市5月10日79.10.60.7625,1242,0115月9日23,77165.81,90365.71,90665.8318
700637L元大滬深300正2市5月10日16.40.010.06118,6541,9615月9日22,36720.636720.536820.6107
82478大毅市5月10日76.66.99.929,6872,2095月9日19,82064.61,32864.31,33364.6555
92323中環市5月10日6.410.142.2387,6695715月9日15,74736.297.436.19836.458.5
102409友達市5月10日12.60028,5693615月9日14,75429.818829.918829.8-10.7
112405浩鑫市5月10日16.2-0.25-1.525,21584.95月9日14,41070.323870.323970.419.6
122601益航市5月10日13.20.050.3823,7783155月9日14,32337.219437.319437.1-56.2
133026禾伸堂市5月10日207.518.59.7926,0975,3135月9日13,99262.42,538622,55362.41,470
排代號名稱
名
16153嘉聯益
22353宏碁
32313華通
46182合晶
53016嘉晶
63090日電貿
700637L元大滬深300正2
82478大毅
92323中環
102409友達
112405浩鑫
122601益航
133026禾伸堂
141605華新
156173信昌電
162367燿華
172456奇力新
leelee1leelee1 wrote:
HTMLsourcecode.getelementbyid("txtStockListData")
怎貼出來的”排名”代號”及”名稱”在後面又會再重複一次?
然後又發現用
Set Table = HTMLsourcecode.getelementbyid("divStockList")
就不會有這種情形?無法理解,所以想請你指導一下,謝謝。...(恕刪)
很單純只是因為2個id 放的資料不一樣而己
我會選txtStockListData是因為只是範例,資料內,有標題,有資料筆數,方便大家看是在抓什麼資料
至於後面多列出的重複的排名,只是我偷懶,測試時沒有把表格拉到最下面,所以沒發現
divStockList,資料乾淨,只有表格內的資料
您知道還有一個divStockList可以用,也算是高手了
關閉廣告