2010-10-03 5 views
0

Cette ligne de code VBA télécharge un fichier CSV à partir du Web et stocke les données dans une feuille de calcul. Quelqu'un peut-il m'aider s'il vous plaît à comprendre comment modifier le code SQL dans ce code afin de sélectionner la colonne "Fermer" dans la table CSV et insérer cette colonne dans la feuille de calcul? Je vous remercie!Manipulation d'un fichier CSV avec SQL

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 
+0

juste « Fermer » et aucune autre colonne - par exemple pas de date"? Aussi, voulez-vous la colonne intitulée "Close" ou celle intitulée "Adj Close"? – barrowc

Répondre

0

Voici une alternative pour atteindre votre résultat final. Peut-être que ce n'est pas la bonne façon de le faire mais je l'ai testé et cela fonctionne.

Une fois que vous obtenez les données que vous pouvez exécuter ceci:

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