Je ne suis pas fort en vba mais j'ai essayé d'adapter un code vba sur le net pour déclarer une fonction dans mon module, sert a récupérer les noms des ordinateurs a partir de leurs adresses ip dans mon réseau local, mais ca ne marche pas , car il me retourne le message d'erreur : Erreur d’exécution "9" l'indice n’appartient pas à la sélection au moment ou il ne vèrifie pas le if:
Voici le code :
Function HostName(ip$) As String
Dim s As String, a
s = CreateObject("Wscript.Shell").Exec("nbtstat -a " & ip).stdout.ReadAll
a = Split(s, vbCrLf)
If UBound(a) > 4 Then
HostName = Trim(Left(a(8), Len(a(8)) - 26))
Else
HosteName = "Introuvable"
End If
End Function
Après avoir afficher le message d'erreur il m'indique l'erreur au niveau de la ligne:
HostName = Trim(Left(a(8), Len(a(8)) - 26))
Je ne sais pas quoi faire, merci beaucoup si quelqu'un peut m'aider et ca sera génial si l’exécution de ce code puisse passer en mode silencieux (sans affichage de flash command)