Création d'onglet automatique avec import de données d'une url

Jucyla

XLDnaute Nouveau
Bonjour le forum,

j'aurais besoin d'une petite aide sur une macro, ce n'est surement pas grand chose mais je suis nulle ^^
En me servant d'un code trouvé sur le forum, j'ai partiellement réussi à faire ce que je voulais.

Donc la macro que j'ai trouvé prend les valeurs contenues dans la colonne A de l'onglet liste, et crée un nouvel onglet pour chaque valeur contenu dans les cellules de la colonne A.
De plus dans chaque nouvel onglet crée , et copié les formules de l'onglet modèle.

J'aurais besoin dans cette boucle que dans chaque onglet crée incorporer à partir de la cellule A1 les données d'une page web dont l'url se trouve dans la colonne E de l'onglet liste.

Pour bien décrire le processus, voilà un exemple :
En cellule A1 de l'onglet "liste" , on a la valeur "ajp", ma macro actuelle va donc crée un onglet nommé "ajp" puis coller l'intégralité des formules de l'onglet "modèle" dans l'onglet "ajp"

ce que je voudrais donc en plus c'est qu'automatiquement avant de passer à la cellule A2 de l'onglet "liste"
que dans la cellule A1 de l'onglet "ajp" soit intégré les données de l'url se trouvant dans la cellule E1 de l'onglet "liste" (si possible avec l'option "Mise en forme HTML complète)

Et ensuite on boucle sur A2 , A3 etc....

je mets mon fichier en pj.
Merci d'avance pour toute l'aide apportée :)
 

Pièces jointes

  • stats.xlsm
    75.5 KB · Affichages: 68

GIBI

XLDnaute Impliqué
Bonjour,

ce n'est pas très clair
mais un exemple pour alimenter la cellule A1 cible à partir de la colonne E

With Worksheets(ThisWorkbook.Sheets.Count) 'avec l'onglet créé
.Name = c.Value 'on renomme
'on remplit notre modèle comme on veut...
.Cells(1, 1) = c.Offset(0, 4).Value ' cellule A1 alimentée avec le contenu de la colonne 5
'xxxxxxxxxxxxxxxxxxxxxxx

End With
 

Jucyla

XLDnaute Nouveau
alors bonne chose tu as réussi grâce à ta ligne en plus à faire effectivement de récupérer la bonne url.
Mais en fait j'ai du mal m'expliquer

en fait je voudrais que cette url que tu as réussi à récupérer, ce n'est pas de la coller en A1, mais de coller son contenu (donc la page web).
En gros au lieu de faire manuellement : menu données, "obtenir des données à partir du web", coller l'url pui faire importer.

j'ai crée un onglet exemple pour montrer ce que je voudrais avoir en a1 de chaque onglet

Merci pour ton aide en tout cas, je pense qu'on ai pas loin , doit suffire de récupérer l'info comme tu l'as fait et de dire à l'import web de faire le nécessaire
 

Pièces jointes

  • stats2.xlsm
    166.5 KB · Affichages: 46

Jucyla

XLDnaute Nouveau
En faisant avec l'enregistreur de macro , voilà ce que donne le code :

Code:
With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;https://swgoh.gg/u/jucyla/collection/darth-nihilus", Destination:=Range( _
        "$A$1"))
        .CommandType = 0
        .Name = "darth-nihilus"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = False
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlEntirePage
        .WebFormatting = xlWebFormattingAll
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With

à mon avis au lieu d'avoir l'url en dur , faut surement utiliser ta ligne : c.Offset(0, 4).Value

à la place mais je ne sais pas faire :)
 

Discussions similaires

Statistiques des forums

Discussions
312 228
Messages
2 086 421
Membres
103 205
dernier inscrit
zch