我想从互联网上下载价格。当我将symb
定义为常数值(例如K15)时,该概念有效。但是现在,我想从不同的链接下载数据,其中部分symb
根据我的电子表格中单元格G13到G22的值而变化。 (换句话说,我想浏览从G13到G22的每一行 - 每行包含symb
的不同值 - 并从相应的链接下载数据。)
我尝试使用一个简单的循环,在每个循环中定义变量symb
:
For i = 1 To 10
Symb = Worksheets("Futures").Range("G12").Offset(i, 0).Value
Set qt = querysheet.QueryTables.Add( _
Connection:="URL;" & "http://download.finance.yahoo.com/d/quotes.csv?s=" & Symb & ".cbt&f=sl1d1t1c1ohgv&e=.csv", _
Destination:=querysheet.Cells(5 + i, 1))
Next i
显然,它不会像这样工作。我假设不可能在循环中定义变量,是吗?有人可以给我一个提示,告诉我如何做到这一点吗?
答案 0 :(得分:0)
您的连接字符串有些问题。当我删除URL字符串中的.cbt
时,它可以正常工作。或者,您可能忘记包含一些字母,因此在浏览器中对其进行调试并获取正确的连接字符串,它应该可以正常工作。
您可能还想修改目标,并刷新表格:
Set qt = querySheet.QueryTables.Add( _
Connection:="URL;" & "http://download.finance.yahoo.com/d/quotes.csv?s=" & Symb & "&f=sl1d1t1c1ohgv&e=.csv", _
Destination:=querySheet.Cells(5, 1))
qt.Refresh
答案 1 :(得分:0)
你可以使用像这样的数组
symb(1 to 10) as String
for i=1 to 10
symb(i)=cells(i,1)
next i