sempaimayfire
XLDnaute Nouveau
Bonjour, tout d'abord, bonne année et meilleurs vœux à tous et toutes !
Je fais appel à votre aide car cela fait 2 jours que je m'arrache les cheveux pour trouver une solution et je n'y arrive pas.
Je m'explique : Dans la feuille "FEUILLE D'IMPORT", j'extrais le format HTML d'une page intranet de ma boite.
Sur cette page, je vais chercher le terme "Composant" ainsi que le terme "Cas d'emploi" (qui se trouve plus bas dans la page).
Je sais que mon terme "Composant" se trouve dans une cellule fusionnée, mais (normalement) devrais avoir sa position en colonne G. (De même pour les valeurs que je veux extraire)
De plus, je sais que mon terme "Cas d'emploi" va apparaître plus bas dans la feuille, lui aussi dans une cellule fusionnée, mais devrait avoir sa position en A (j'espère que je vous ai pas perdu)
J'aimerai pouvoir extraire toutes les cellule sous le terme "Composant" jusqu'à arriver à "Cas d'emploi", si en plus je peux chopper la colonne M sur les même lignes que les valeurs que j'extrait ca serait top.
Pour l'instant voici le code que j'ai réalisé :
Je me suis grandement inspiré d'un tuto que j'ai trouvé sur le site Excel-Pratique, code réalisé par Sébastien Mathier.
Sachez que je suis tout juste débutant en VBA, donc j'essaye de comprendre un peu comment ça marche
Merci d'avance pour ceux qui prendront le temps d'y jeter un oeil
Je fais appel à votre aide car cela fait 2 jours que je m'arrache les cheveux pour trouver une solution et je n'y arrive pas.
Je m'explique : Dans la feuille "FEUILLE D'IMPORT", j'extrais le format HTML d'une page intranet de ma boite.
Sur cette page, je vais chercher le terme "Composant" ainsi que le terme "Cas d'emploi" (qui se trouve plus bas dans la page).
Je sais que mon terme "Composant" se trouve dans une cellule fusionnée, mais (normalement) devrais avoir sa position en colonne G. (De même pour les valeurs que je veux extraire)
De plus, je sais que mon terme "Cas d'emploi" va apparaître plus bas dans la feuille, lui aussi dans une cellule fusionnée, mais devrait avoir sa position en A (j'espère que je vous ai pas perdu)
J'aimerai pouvoir extraire toutes les cellule sous le terme "Composant" jusqu'à arriver à "Cas d'emploi", si en plus je peux chopper la colonne M sur les même lignes que les valeurs que j'extrait ca serait top.
Pour l'instant voici le code que j'ai réalisé :
VB:
Sub import()
Sheets("FEUILLE D'IMPORT").Cells.Clear
Application.CutCopyMode = False
With Sheets("FEUILLE D'IMPORT").QueryTables.Add(Connection:= _
"URL;http://intranet/TSA/technique/Donnees/Article/VisuArticle.asp?Machine=MA-0075" _
, Destination:=Sheets("FEUILLE D'IMPORT").Range("$A$1"))
.Name = "VisuArticle.asp?Machine=MA-0075"
.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
compteur = 0
For Ligne = 1 To 1000
If (Sheets("FEUILLE D'IMPORT").Cells(Ligne, 7) = "Composant") Then
compteur = compteur + 1
Sheets("Test").Cells(compteur, 1) = Sheets("FEUILLE D'IMPORT").Cells(Ligne, 7)
If (Sheets("FEUILLE D'IMPORT").Cells(1, 1)) = ("Cas d'Emploi") Then Exit For
End If
Next
End Sub
Je me suis grandement inspiré d'un tuto que j'ai trouvé sur le site Excel-Pratique, code réalisé par Sébastien Mathier.
Sachez que je suis tout juste débutant en VBA, donc j'essaye de comprendre un peu comment ça marche
Merci d'avance pour ceux qui prendront le temps d'y jeter un oeil