【发布时间】:2016-01-04 04:56:49
【问题描述】:
我能够从 yahoo.finance 获得单个选项报价,其中数据垂直传递到两列(一个标题,一个数据),但我所有尝试水平接收数据的尝试都没有成功。我最终试图编写一个命令,该命令将下载一系列选项报价,这些报价将作为每行一个提供。目前,我什至无法获得一条水平线数据。请帮忙!
如果有其他免费服务(例如 CBOE、Google)可以做到这一点,请告诉我。任何和所有的帮助将不胜感激!
Sub getOption()
'
' Attempting to return a stock option in a csv format with all datat in either one cell or accross 5 cells in one row
' data desired to Retrieve:
' name = n
' previous close = p
' ask = a
' bid = b
' open interest = o1
'
Const YAHOO_FINANCE_URL = "http://finance.yahoo.com/q/?s=SKX160122C00035000" 'retrieves option data vertically with a header, but adding &f=npbao1, /d/quotes.csv or &e=.csv makes it not work at all.
On Error Resume Next
With ActiveSheet.QueryTables.Add(Connection:="URL;" & YAHOO_FINANCE_URL, Destination:=ActiveCell)
.Name = "qtActiveRange" & Rnd()
.RefreshStyle = xlOverwriteCells
.AdjustColumnWidth = False
.BackgroundQuery = False
.Refresh
End With
End Sub
【问题讨论】:
标签: vba excel csv yahoo-finance stocks