Bonjour
J ai une liste de Hostname dans la colonne B de B8 à BX . Je possède une code qui fonctionne bien et est capable de pinger la liste des postes , et d'écrire dans la colonne C l'adresse IP, si bien sur le poste est donc joignable.
Peut'on mettre l'information " poste non joignable"' à la place d'une cellule vide quand celui ci est dans ce cas ?
De plus la commande recommence du début à chaque fois et donc réécrit les adresses IP déjà analysées ce qui est très embêtant ... Je ne sais pas comment lui dire que si il voir une entrée en B (donc un résultat déjà écrit) de ne pas lancer la commende et continuer ...
Voici la commande en question:
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 Sub PingListePostes() On Error Resume Next Set objhttp = CreateObject("MSXML2.ServerXMLHTTP.4.0") Dim ra As Range, cell As Range, PingResult As Variant Set ra = Range([B8], Range("B" & Rows.Count).End(xlUp)) ra.Offset(, 1).Resize(, 2).ra.Offset For Each cell In ra.Cells Computer$ = Trim(cell): IP = "" For Each PingResult In GetObject("winmgmts://./root/cimv2").ExecQuery _ ("SELECT * FROM Win32_PingStatus WHERE Address = '" & Computer$ & "'") If IsObject(PingResult) Then IP = PingResult.ProtocolAddress If IsNull(PingResult.StatusCode) _ Or PingResult.StatusCode <> 0 Then End If Next cell.Next = IP: DoEvents Next cell Set objhttp = Nothing MsgBox "FIN DU PING" End Sub
Partager