Code VBA avec appel de CSV sur internet

Bonjour à tous,

Je suis débutant sur VBA, et j'ai un projet à réaliser en finance. Je fais appel à vous car je suis bien perdu avec toutes les notions en VBA.

Mon projet est le suivant :

Je souhaiterai importer les cours des actions en fonction des dates que l'utilisateur à choisit. La seule option que j'ai trouvé afin d'avoir le maximum de donnée c'est par CSV. Hors cela posera un probleme apres l'obtention du CSV car je dois automatiser l'opération pour de nombreuses valeurs, et j'ai peur que les fichiers vont s'entremeler.

Voici la partie de mon code très basique :

Sub ImportCotation()

Dim DateDeb As String
Dim DateFin As String

    MsgBox ("Choix de la periode")

    DateDeb = InputBox("DateDeb ? (Format DD/MM/AA)", "Titre")
    DateFin = InputBox("DateFin ? (Format DD/MM/AA)", "Titre")

     Dim a As Variant: a = Split(DateDeb, "/")
     Dim b As Variant: b = Split(DateFin, "/")

ActiveWorkbook.FollowHyperlink"..."

End Sub

Jusque la tout fonctionne, VBasic crée alors 6 variables ( a(0), a(1), a(2) b(0) b(1) b(2).

Le lien pour obtenir le fichier CSV est le suivant :

http://real-chart.finance.yahoo.com/table.csv?s=BN.PA&a=01&b=12&c=2012&d=09&e=12&f=2014&g=d&ignore=.csv

Je dois réussir à remplacer les chiffres dans ce liens par les données rentré par l'utilisateur. Hors lorsque je fais la formule :

http://real-chart.finance.yahoo.com/table.csv?s=BN.PA&a="&[u]a(0[/u])&"&b=12&c=2012&d=09&e=12&f=2014&g=d&ignore=.csv

Il me renvoie une erreur et il est impossible pour lui de télécharger le fichier CSV.

Si quelqu'un aurait une idée comment résoudre ce problème !! Merci à vous !

bonjour,

Sub test()
Dim DateDeb$, DateFin$, SDeb$, Suite$, Va, Vb

SDeb = "http://real-chart.finance.yahoo.com/table.csv?s=BN.PA&a="

MsgBox ("Choix de la periode")
    DateDeb = InputBox("DateDeb ? (Format DD/MM/AAAA)", "Titre")
    DateFin = InputBox("DateFin ? (Format DD/MM/AAAA)", "Titre")

Va = Split(DateDeb, "/")
Vb = Split(DateFin, "/")

Suite = Va(0) & "&b=" & Va(1) & "&c=" & Va(2) & "&d=" & Vb(0) & "&b=" & Vb(1) & "&c=" & Vb(2) & "&g=d&ignore=.csv"

ActiveWorkbook.FollowHyperlink SDeb & Suite
End Sub

A+

Merci énormément ! cela fonctionne super bien !!

Rechercher des sujets similaires à "code vba appel csv internet"