使用SQL操作CSV

使用SQL操作CSV,sql,vba,excel,Sql,Vba,Excel,这行VBA代码从web下载CSV文件,并将数据转储到电子表格中。有人能帮我弄清楚如何调整这段代码中的SQL,以便在CSV表中选择“Close”列并将该列插入电子表格中吗?谢谢大家! Sub test() Dim sqldata As QueryTable Set sqldata = ActiveSheet.QueryTables.Add( _ Connection:="TEXT;http://ichart.finance.yahoo.com/table.csv?s=JAZZ&d=9

这行VBA代码从web下载CSV文件,并将数据转储到电子表格中。有人能帮我弄清楚如何调整这段代码中的SQL,以便在CSV表中选择“Close”列并将该列插入电子表格中吗?谢谢大家!

Sub test()
Dim sqldata As QueryTable

 Set sqldata = ActiveSheet.QueryTables.Add( _
 Connection:="TEXT;http://ichart.finance.yahoo.com/table.csv?s=JAZZ&d=9&e=3&f=2010&g=d&a=5&b=1&c=2007&ignore=.csv" & _
 "sqlstring= SELECT * from table", _
 Destination:=Range("A1"))

 With sqldata
 .TextFileCommaDelimiter = True
 .Refresh 'executes the retreival
 End With
 End Sub

这里有一个替代方案来达到你的最终结果。也许这不是正确的方法,但我已经测试过了,它是有效的

获取数据后,可以执行以下操作:

Application.ScreenUpdating = False
Range("A:A,B:B,C:C,D:D,F:F,G:G").Select
Range("G1").Activate
Selection.Delete Shift:=xlToLeft
Range("A1").Select
Application.ScreenUpdating = True
只有“结束”栏,没有其他栏-例如,没有“日期”?另外,您想要标题为“Close”的列还是标题为“Adj Close”的列?