Anzeige
Archiv - Navigation
964to968
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
964to968
964to968
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

IP Ermittlung anhand Rechnername

IP Ermittlung anhand Rechnername
28.03.2008 10:54:05
Steffen
Hallo Mitstreiter,
ich habe eine Liste von Rechnernamen aus meinem Firmennetz.
Jetzt brauche ich von diesen Rechnern die IP-Nummer.
über
mycmd = Shell("cmd /C ping" & Rechnername)
bekomme ich leider nur die Pingzeit, nicht die IP
Hat jemand vin Euch einen Lösungsansatz für mich.
Die Idee den inhalt der Shell in eine txt-Datei zu kopieren, hatte ich auch schon, jedoch gibt mir Excel bei der Anweisung
mycmd = Shell("cmd /C ping" & Rechnername, 1 > "c:\Temp\Ip.txt")
den Fehler Datei nicht gefunden zurück, obwohl die TXT bereits existiert.
Ersetze ich den Ping-Befehl duch ipconfig, schreibt mir Excel brav die Shell in die TXT rein.
Dank in Voraus
Steffen

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: IP Ermittlung anhand Rechnername
28.03.2008 11:23:00
UweD
Hallo
den Teil mit der TXT-Datei ....
so funktioniert die Dateierstellung (bei mir)
mycmd = Shell("cmd /C ping " & Rechnername & " &gtC:\IP.txt")
anschließend könntest du die Datei auslesen (2 Zeilen rechen)
und in der 2. Zeite den Teil zwischen den eckigen Klammern auslesen.

AW: IP Ermittlung anhand Rechnername
28.03.2008 12:11:00
UweD
hier mal das auslesen der IP


      
Sub IP()
    
Dim Rechnername$, mycmd$
    
Dim Datei$, TText$, IP$, A%, B%
    
    Rechnername = 
"DEINRechner"
    Datei = 
"C:\IP.txt"
    
    mycmd = Shell(
"cmd /C ping " & Rechnername & " >" & Datei)
    
    
Open Datei For Input As #1
    
Do While Not EOF(1)
        
Input #1, TText
        A = InStr(1, TText, 
"[")
        
If A > 0 Then
            B = InStr(1, TText, 
"]")
            
Exit Do
        
End If
    
Loop
    
Close #1
    IP = Mid(TText, A + 1, B - A - 1)
    MsgBox IP
End Sub 


Fehlerbehandlung, wenn Datei nicht da ist oder die Klammern fehlen solltest du noch ergänzen...
Gruß aus Siegen

Anzeige
AW: IP Ermittlung anhand Rechnername
28.03.2008 12:31:01
Steffen
Danke... so klappt es

AW: IP Ermittlung anhand Rechnername
28.03.2008 12:22:00
Steffen
Hast du bitte mal den vollständigen code.
Bei mir bleibt da die txt leer.
Wofür steht "gt" ?
Oder ist das eine von Dir vordefinierte Variable?
hab grad noch mal folgendes probiert:
'Datei erstellen
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\Temp\IP.txt", True)
a.WriteLine (Shell("cmd /C ping " & Rerchnername))
a.Close
dann steht aber wieder bloß die Zeit in der TXT
Steffen

AW: IP Ermittlung anhand Rechnername
29.03.2008 09:40:33
Volti
Hallo Steffen,
"gt" steht für das "&gt"-Zeichen (greater then). Das Größerzeichen kannst Du in HTML-Seiten nicht so ohne weiteres in Texten verwenden, da es für die Tags verwendet wird. und kuddelmuddel macht.
Shell("cmd /C ping " & Rechnername & " &gtC:\IP.txt")
In diesem code steht das Größerzeichen für die Umlenkung des Ergebnisses von Ping in die angegebene Textdatei. Also, das Zeichen ist wichtig.
Gruß
KH
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige