IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Raccourcir les répétitions d'un code avec URL qui change


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 93
    Par défaut Raccourcir les répétitions d'un code avec URL qui change
    Salut à tous !

    Voilà j'ai ce code qui se répète avec plusieurs variables qui changent (l'URL, numéro du nom de la donné, numéro de la cellule de destination)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    URL = "http://www.url1.com"
    code = GetCodeSource(URL)
    donnee1 = Split(Split(code, "<span"">")(1),"<")(0)
    Sheets("DONNEE").Range("A1") = donnee1
     
    URL = "http://www.url2.com"
    code = GetCodeSource(URL)
    donnee2 = Split(Split(code, "<span"">")(1),"<")(0)
    Sheets("DONNEE").Range("A2") = donnee2
     
    URL = "http://www.url3.com"
    code = GetCodeSource(URL)
    donnee3 = Split(Split(code, "<span"">")(1),"<")(0)
    Sheets("DONNEE").Range("A3") = donnee3
     
    ....ect
    quelle est la formule magique afin de raccourcir le schmilblick, j'ai entendu "boucle", mais je nage


    Merci !

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Un truc dans le genre ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Sub Test()
     
        Dim I As Integer
        Dim X As Integer
        Dim Pref As String
        Dim Suf As String
     
        'à adapter
        X = 3
        Pref = "http://www.url"
        Suf = ".com"
     
        With Worksheets("DONNEE").Cells(I, 1)
     
            For I = 1 To X
     
                .Value = Split(Split(GetCodeSource(Pref & I & Suf), "<span"">")(1), "<")(0)
     
            Next I
     
        End With
     
    End Sub
    Hervé.

    Oups,

    Plutôt comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    Sub Test()
     
        Dim I As Integer
        Dim X As Integer
        Dim Pref As String
        Dim Suf As String
     
        'à adapter
        X = 3
        Pref = "http://www.url"
        Suf = ".com"
     
     
        For I = 1 To X
     
            With Worksheets("DONNEE").Cells(I, 1)
     
                .Value = Split(Split(GetCodeSource(Pref & I & Suf), "<span"">")(1), "<")(0)
     
            End With
     
        Next I
     
    End Sub
    Hervé.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 93
    Par défaut
    merci

    ça se rapproche certainement de cela sauf pour les url

    disons que ces url sont plutot comme ça (ou il n 'y a aucun lien logique entre le suivant et le précédent) :

    http://www.url.com/5126542/fvf=

    http://www.url.com/4561516/fvf=

    http://www.url.com/9723441/fvf=

    il faudrait rentrer que ces numéros dans une liste dans la macro

    Merci encore

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Re,

    Tu parle d'Url comme ceci :
    URL = "http://www.url1.com"
    URL = "http://www.url2.com"
    URL = "http://www.url3.com"
    et ensuite comme cela :
    Ce sera comment les prochaines ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    Sub Test()
     
        Dim Tbl As Variant
        Dim I As Integer
        Dim X As Integer
        Dim URL As String
     
        Tbl = Array("http://www.url.com/5126542/", "http://www.url.com/4561516/", "http://www.url.com/9723441/")
     
        For I = 0 To UBound(Tbl)
     
            With Worksheets("DONNEE").Cells(I + 1, 1)
     
                .Value = Split(Split(GetCodeSource(Tbl(I)), "<span"">")(1), "<")(0)
     
            End With
     
        Next I
     
    End Sub
    Hervé.

Discussions similaires

  1. [XL-2010] Lien entre 2 fichiers avec un qui change de nom
    Par Neptune64 dans le forum Excel
    Réponses: 2
    Dernier message: 06/11/2013, 13h59
  2. Réponses: 1
    Dernier message: 16/09/2010, 11h02
  3. barre de chargement avec texte qui change
    Par oliv27400 dans le forum MATLAB
    Réponses: 2
    Dernier message: 22/07/2010, 18h13
  4. Un code avec pointeurs qui ne marche pas
    Par yohannc dans le forum Débuter
    Réponses: 5
    Dernier message: 31/10/2008, 16h18
  5. Problème avec Decimalseparator qui change dans mon dos
    Par Cavadore dans le forum Langage
    Réponses: 4
    Dernier message: 21/02/2008, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo