標題:
[發問]
如何將下載下來的資料保持原來格式
[打印本頁]
作者:
zheng211016
時間:
2018-4-10 19:04
標題:
如何將下載下來的資料保持原來格式
如下圖
此圖 是我由TWSE自動下載的資料 但是有些股票代碼是00開頭的 卻沒辦法保持原來的數值 想請求各位老手協助
[attach]28511[/attach]
[attach]28512[/attach]
作者:
nolookyou
時間:
2018-4-26 11:17
回復
1#
zheng211016
小弟直覺不難解決,A欄內容固定是股票代號的話,可嘗試:
1.載入A欄內容前,儲存格[格式]>[類別]先改成[文字]試試看
2.或告知下載內容網址我幫你試一下
3.或直接給EXCEL檔案我幫你試一下
作者:
zheng211016
時間:
2018-4-28 22:04
http://www.twse.com.tw/exchangeReport/MI_INDEX?response=html&date=20180427&type=ALLBUT0999
麻煩您了
作者:
iamaraymond
時間:
2018-4-29 12:01
回復
3#
zheng211016
要不要試試看VBA的方法?
Sub test()
'Dim t: t = Timer
Cells.Clear
Dim myXML As Object
Set myXML = CreateObject("Microsoft.XMLHTTP")
Dim myHTML As Object
Set myHTML = CreateObject("HTMLFile")
With myXML
.Open "GET", "http://www.twse.com.tw/exchangeReport/MI_INDEX?response=html&date=" & Format(Now(), "yyyy/mm/dd") & "&type=ALLBUT0999", False
.send
myHTML.body.innerHTML = .responseText
Set myTable = myHTML.getElementsByTagName("Table")(4)
i = 1
For Each myRow In myTable.Rows
j = 1
For Each myCell In myRow.Cells
If j = 1 Then
Cells(i, j) = "'" & myCell.innerText
Else
Cells(i, j) = myCell.innerText
End If
j = j + 1
Next
i = i + 1
Next
End With
Set myXML = Nothing
'Debug.Print Format(Timer - t, "0.00秒")
End Sub
複製代碼
作者:
zheng211016
時間:
2018-4-29 15:03
回復
4#
iamaraymond
謝謝大大 果真可以 又迅速 小弟感激不盡
作者:
iamaraymond
時間:
2018-4-29 15:43
回復
5#
zheng211016
若有問題再提出~
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)