- 帖子
- 83
- 主題
- 17
- 精華
- 0
- 積分
- 105
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2010-12-28
- 最後登錄
- 2018-8-8
|
[發問] 如何更改網頁中的OPTION作取得資料和轉換繁體中文問題
本帖最後由 小俠客 於 2015-7-10 10:33 編輯
大家好,我打算到SINA CN的網站取得財務資料:
http://stock.finance.sina.com.cn/hkstock/finance/00001.html
當中的資料已經排好,算是很好取得。但這網站的「報表類型」預設是「全部」,所以會同時顯示年報和中報資料,因為欄位所限(8個),只會顯示近四年的資料。如果把「報表類型」改成「年報」,我便可以取得近八年的資料。由放要更改網頁的SELECT OPTION,所以不能用QueryTables的方法。
我嘗試用以下CODING,是可以改到「報表類型」成年報,但資料沒有更新。- Sub getData()
- Dim URL As String, A As Object, B As Object, i As Integer
- URL = "http://stock.finance.sina.com.cn/hkstock/finance/00001.html"
- With CreateObject("InternetExplorer.Application")
- .Visible = True ' 是否顯示 IE
- .Navigate URL
- Do While .readyState <> 4
- DoEvents
- Loop
- Set A = .document.getelementsbytagname("SELECT")
- A.Item(1).Value = "zero" '年報
- Cells(1, 1) = .document.body.innerhtml
- .Quit
- End With
- End Sub
複製代碼 但假如我在「Set A = .document.getelementsbytagname("SELECT")」這句暫停程式,手動更改「報表類型」,結果是可以拿到八年結果。請問各位大大可以指教我嗎?謝謝大家。
另外,我找到方法可以用excel內置功能把簡體轉繁體,但是這功能要我先儲存WORKBOOK或手動確定「轉換時未儲存」,為了能夠批次執行,所以我加上了thisworkbook.save這句,請問除了這方法外,有沒有不用儲存、不用確認的轉換方法?謝謝大家。- Set ConvertObj = Application.COMAddIns("TCSCConv.SharedAddin.14").Object
- thisworkbook.save
- ConvertObj.DoSC2TC
複製代碼 |
|