Répéter une macro sur plusieurs lignes

Pierre42

XLDnaute Nouveau
Bonjour,

Débutant en macro, je me suis lancé pour pouvoir récupérer plus facilement des données consultables sur internet grâce à une requête sur le web. J'ai donc enregistré cette macro qui fonctionne très bien :

Code:
Sub maree()
'
' marée Macro
'

'
mois = Range("d5")
annee = Range("e5")
jour = Range("c5")

    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.shom.fr/ann_marees/cgi-bin/predit_ext/choixp?opt=8&zone=11&port=SAINT-NAZAIRE&mm=" & mois & "&yyyy=" & annee & "&dd=" & jour & "&fuseau=0&jour=1&portsel=list&compute=TRUE" _
        , Destination:=Range("$F$5"))
        .Name = _
        "choixp?opt=8&zone=11&port=SAINT-NAZAIRE&mm=01&yyyy=2011&dd=1&fuseau=0&jour=1&portsel=list&compute=TRUE"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "3"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
    Range("F5:M8").Select
    Selection.Delete Shift:=xlUp
End Sub
J'ai créé trois variables : jour, mois et année. Ces variables me permettent de modifier l'adresse URL de ma requête Web et ainsi changer la donnée en fonction de la date que je lui demande.

Dans la colonne C, j'ai le numéro du jour, dans la colonne D le numéro du mois, dans la colonne E le numéro de l'Année. Mes données créé par la macro s'affiche dans les colonnes suivantes.

Cette macro me permet d'afficher seulement une valeur pour un jour donnée sur la ligne 5, or j'aimerais le faire pour les 365 jours de l'année (soit de la ligne 5 à 370). Est il possible de répéter cette macro sur plusieurs lignes en modifiant automatiquement les coordonnées des cellules des variables et de la destination de la requête web ?

Si vous avez des pistes je suis preneur. Merci
 

Balot57

XLDnaute Nouveau
Re : Répéter une macro sur plusieurs lignes

Bonjour,
Tu peux essayer la macro jointe. Dans la 1ère feuille, mets toutes les dates que tu souhaites.
 

Fichiers joints

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas