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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
Sub test()
Dim sht As Worksheet
Dim url As String
Dim nb_imp As String
Dim ip As String
Dim ligne As Integer
Dim valeur1 As String
Dim valeur2 As String
Dim valeur3 As String
ligne = 1
nb_imp = [CountA(Feuil2!A1:A200)]
For ligne = 1 To nb_imp
ip = (Sheets("Feuil2").Range("A" & ligne).Value)
'fichier rapatrié
url = "http://" & ip & "/hp/device/info_configuration.htm"
Set sht = Sheets("feuil1")
'la manip suivante efface toutes les données présentes sur la feuille feuil1
sht.Cells.Clear
' la procédure de rapatriement proprement dite
With sht.QueryTables.Add("URL;" & url & "", sht.Range("A1"))
'sht.range("A1") = cellule cible où doit être rapatrié le tableau html
.RefreshStyle = Excel.XlCellInsertionMode.xlInsertDeleteCells
.SaveData = True
.Refresh BackgroundQuery:=False
End With
'Manipulations pour une meilleure présentation
sht.Cells.MergeCells = False 'supprime toutes les celules fusionnées dans la feuille
sht.Cells.EntireColumn.AutoFit 'adapte la largeur des colonnes au contenu des cellules
'Remplissage de ma feuille 2 avec les valeurs récupérées
valeur1 = Sheets("Feuil1").Range("A192").Value
valeur2 = InStr(1, Sheets("Feuil1").Range("A192").Value, ">") + 1
valeur3 = InStr(InStr(1, Sheets("Feuil1").Range("A192").Value, ">"), Sheets("Feuil1").Range("A192").Value, "<") - InStr(1, Sheets("Feuil1").Range("A192").Value, ">") - 1
Sheets("Feuil2").Range("B" & ligne).Value = Mid(valeur1, valeur2, valeur3)
Next
End Sub |
Partager