Office: Erreichbarkeit mit Ping messn

Helfe beim Thema Erreichbarkeit mit Ping messn in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo liebe Member, um das Firmennetzwerk etwas zu evaluieren und die Server auf Erreichbarkeit zu testen, möchte ich einen Ping aus Excel starten. Ich... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von TobiasKornmayer, 11. März 2009.

  1. Erreichbarkeit mit Ping messn


    Hallo liebe Member,
    um das Firmennetzwerk etwas zu evaluieren und die Server auf Erreichbarkeit zu testen, möchte ich einen Ping aus Excel starten. Ich habe eine Lösung gefunden (also nicht von mir) die zwar gute ergebnisse liefert, aber sehr viel Zeit benötigt, da jedes mal der Rechnername aufgelöst wird (wie mir scheint), hier der Code:

    Code:
    Das Herber-Makro habe ich bereits gefunden, wollte aber innerhalb von excel bleiben. Auch ein anderes Makro ist mir bekannt, bei dem aber immer die Shell aufpoppt, was auch nicht so toll ist.

    Weiß jemand wie man im ersten Makro Die Namensauflösung umgehen kann?
    Oder hat jemand einen anderen Ansatz?

    Vielen Dank für eure Hilfe,

    Tobias

    :)
     
    TobiasKornmayer, 11. März 2009
    #1
  2. Hallo Tobias,

    wenn ich das richtig sehe, springst du für jeden anzupingenden PC die Funktion Ping an, wartest auf die Rückmeldung und machst dann in einer Schleife beim nächsten PC weiter. Das dauert deshalb so lange, weil ein Ping, solange er nicht erfolgreich ist, bis zu vier Mal gesendet und dazwischen immer eine Zeit lang auf Rückmeldung gewartet wird. In dieser Zeit passiert erstmal nichts. Erst nach dem vierten erfolglosen Versuch erfolgt dann eine Rückmeldung an den Sender des Pings.

    Ich habe vor einiger Zeit folgendes Makro geschrieben, das einen etwas anderen Ansatz hat. Das Makro wartet nicht bei jedem einzelnen PC auf Rückmeldung, sondern schickt erstmal Pings an alle PCs los. Die Rückmeldungen werden dann unabhängig vom weiteren Makroablauf in eine Textdatei geschrieben. Für jeden PC erzeugt das Makro vorab eine solche (leere) Textdatei. Nach dem Abschicken der Pings werden diese Textdateien dann in einer Schleife immer wieder durchlaufen und es wird geprüft, ob eine Rückmeldung darin steht. Diese Rückmeldung wird dann ausgewertet und in die Exceltabelle eingetragen.

    Folgendes ist zu beachten. Du musst zunächst einen Ordner C:\Ping\ für die Rückmeldungsdateien anlegen. Falls du keine Administratorrechte auf dem PC hast, musst du den Ordner irgendwo in deinem Userpfad anlegen und das im Makro anpassen. Das Makro kommt in ein allgemeines Modul. In Tabelle1 der Arbeitsmappe stehen in Spalte A ab A2 entweder die Namen oder die IP-Nummern der anzupingenden PCs. In Spalte B wird zu jedem PC AN oder AUS zurückgegeben. Die Zelle A1 muss leer sein, es sei denn, du möchtest den Ping in Intervallen automatisch wiederholen. In diesem Fall kannst du in die Zelle A1 eine Intervallzeit im Format hh:mm:ss eingeben. In die erste Zeile der Spalte B (und weiterer Spalten bei Intervallwiederholung) wird der Zeitpunkt der Pings eingetragen. In meiner Mappe habe ich über die Zelle A1 den Startbutton für das Makro gelegt.

    Code:
     
  3. Hi Ingolf,
    tolles Makro hast du da gemacht. Ist es möglich, auch den Timeout auszulesen?

    Gruß,
    Tobias
     
    TobiasKornmayer, 13. März 2009
    #3
  4. Erreichbarkeit mit Ping messn

    Also ich hab das Makro mal probiert, aber irgendwie verschwinden die txt-dateien wieder, nachdem ich es ausgeführt habe. und eingetragen wurde ebenfalls nichts. ich musste es etwas anpassen, da die PCs anscheinend in Spalte C eingetragen waren. Naja, das einzige was etwas stört ist, dass dann für jeden PC eine cmd aufpömpelt.

    Tobias
     
    TobiasKornmayer, 13. März 2009
    #4
  5. Hallo Tobias,

    sorry, das mit Spalte C stimmt natürlich. Ich habe bei mir in den Spalten A und B noch die UserIDs und Namen der Mitarbeiter stehen. Da habe ich die UserIDs mit den PC-Namen verwechselt. Das die Textdateien wieder verschwinden ist Absicht. Sie werden in der Schleife, in der auf die Rückmeldungen gewartet wird gelöscht, sobald ein Rückgabewert gefunden und ausgewertet wurde. Die Schleife läuft dann einfach weiter, bis keine Datei mehr im Ordner existiert.

    Jetzt habe ich das Makro mal ein wenig an deine Wünsche angepasst:
    • Die PC-Namen oder IP-Nummern der PCs kommen jetzt tatsächlich in Spalte A. Die Rückgabemeldungen werden in Spalte B ausgegeben.
    • Die DOSen werden im Hintergrund gehalten.
    • An Stelle von AN und AUS werden nun die kompletten Rückmeldungen in Spalte B des Tabellenblattes ausgegeben.
    • Über eine bedingte Formatierung werden in der Rückgabespalte alle Zellen mit erfolgreichem Ping grün und diejenigen mit erfolglosem Ping rot gekennzeichnet.
    Ich habe dir mal eine Arbeitsmappe hochgeladen. Hier aber trotzdem nochmal der angepasste Makrocode:

    Code:
     
  6. Hallo ,

    noch eine Variante:

    Sub ping()
    Dim objWMIService As Object, i As Double
    Dim colPings As Object, objPing As Object
    On Error Resume Next
    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
    'Spalte A durchlaufen(IP-Adressen oder Computernamen)
    For i = 1 To Tabelle1.UsedRange.Rows.Count
    If Cells(i, 1).Value <> "" Then
    Application.StatusBar = Cells(i, 1).Value
    Set colPings = objWMIService.ExecQuery _
    ("Select * From Win32_PingStatus where Address = '" & Cells(i, 1).Text & "'")
    If Err = 0 Then
    Err.Clear
    For Each objPing In colPings
    If Err = 0 Then
    Err.Clear
    'in Spalte B Ergebniss schreiben
    If objPing.StatusCode = 0 Then
    Cells(i, 2).Value = "Timeout " & objPing.ResponseTime & " ms"
    Cells(i, 2).Interior.ColorIndex = 4 'erreichbar = grün
    Else
    Cells(i, 2).Value = "nicht erreichbar"
    Cells(i, 2).Interior.ColorIndex = 3 'nicht erreichbar = rot
    End If
    End If
    Next
    Else
    Err.Clear
    End If
    End If
    Next
    Application.StatusBar = False
    End Sub

    mfg Anton
     
    _anton_, 14. März 2009
    #6
  7. Hi Anton,
    habe Deinen Ansatz getestet, aber colPings ändert seinen Status eigentlich nie, das heißt es geht irgendwie nich. Was hab ich falsch gemacht? Und wie funktioniert die Zeile Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")?

    Lieber Gruß,
    Tobias
     
    TobiasKornmayer, 15. März 2009
    #7
  8. Erreichbarkeit mit Ping messn

    Ah sorry, hatte den Verweis auf "Tabelle1" im Schleifenkopf nich bemerkt. Klappt bestens Dein Makro, vielen Dank. Wenn jemand interessiert ist, kann ich gern meine Arbeitsmappe mit den andern Ansätzen posten.

    Lieber Gruß,
    Tobias
     
    TobiasKornmayer, 16. März 2009
    #8
  9. Hey - das funzt richtig Gut, da kann ich die von mir zusammengeschusterte "sch.." eigentlich löschen..

    Dies blockiert bei mehreren IP's den Rechner.. *frown.gif*
    Oberer SUB löscht nur den Inhalt - restliches Pingt (1x) und erzeugt ein On oder Offline..

    Leider finde ich keine gescheite Lösung das CMD Fenster in den Hintergrund zu setzen innerhalb des Makros,.. und bei Eingabe des Rechnernamens wäre ein Drittes Feld mit IP recht schickt^^

    Code:
     
    Schnaggelz, 8. Februar 2016
    #9
Thema:

Erreichbarkeit mit Ping messn

Die Seite wird geladen...
  1. Erreichbarkeit mit Ping messn - Similar Threads - Erreichbarkeit Ping messn

  2. Bin wieder erreichbar

    in Microsoft Excel Hilfe
    Bin wieder erreichbar: Hallo (wer auch immer versucht hat, mich zu erreichen), bin wieder per Mail erreichbar.
  3. Laufzeitfehler 429 bei VBA

    in Microsoft Excel Hilfe
    Laufzeitfehler 429 bei VBA: Hallo zusammen, ich schreibe gerade in Excel eine Automatische Ping abfrage für IP Adressen. im Anhang finden Sie meinen Code, Tabelle und den Fehler den er ausgibt. Kann man dabei jemand...
  4. Prüfen der Erreichbarkeit von Hyperlinks

    in Microsoft Excel Hilfe
    Prüfen der Erreichbarkeit von Hyperlinks: Guten Tag, ich bin leider ziemlich neu und kann mit VBA nur rudimentär umgehen. Ich hoffe ich kann mein Problem gut genug beschreiben. Ich habe eine EXCEL-Tabelle erzeugt mit vielen...
  5. Account wechseln - Erreichbarkeit?

    in Microsoft Teams Hilfe
    Account wechseln - Erreichbarkeit?: Hallo zusammen, könnt ihr mir hier weiterhelfen? Firma A ist mein Unternehmen, für das ich ein TEAM "Alpha" erstellt habe. Nun sollen Unternehmen B und Unternehmen C im Team "Alpha" jeweils als...
  6. Externer Kontakt nicht erreichbar

    in Microsoft Teams Hilfe
    Externer Kontakt nicht erreichbar: Guten Morgen, ich habe folgendes Problem: Obwohl mein externer Kontakt online und verfügbar ist, erscheint beim Anruf die Fehlermeldung: "Die Person, die Sie erreichen möchten, ist nicht...
  7. Mailbox (pst-file) soll von verschiedene Arbeitsplätzen erreichbar sein

    in Microsoft Outlook Hilfe
    Mailbox (pst-file) soll von verschiedene Arbeitsplätzen erreichbar sein: Guten Tag. Ich schlage mich jetzt schon seit Wochen mit folgendem Problem rum: Ein Unternehmen mit eine Active Directory. Mitarbeiter arbeiten an verschiedenen Arbeitsplätzen. Desktop und...
  8. Vertrauensstellungscenter nicht erreichbar

    in Microsoft Excel Hilfe
    Vertrauensstellungscenter nicht erreichbar: hallo, ich versuche seit gestern nach einigen Updates auf Excel, Makros wieder zu aktivieren. Das Problem ist, daß ich in den Excel-Optionen lediglich auf die Resourcen zugreifen kann. Alle...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden