SNMP Abfrage in EXCEL über VBA
Hallo Zusammen,
Erstmal zum Sachverhalt:
Ich habe mehrere Drucker (ca. 50) die über SNMP ansprechbar sind. Mein Ziel ist über eine Schaltfläche im Excel die Zählerstände der Drucker auszulesen und in von mir festgelegte Zellen reinzuschreiben.
Die OIDs habe ich bereits alle rausgelesen und kann die abfragen über die Eingabeaufforderung ausführen und bekomme das richtige Ergebnis raus.
Leider bin ich ziemlich neu auf dem Gebiet Visual Basic und weiß jetzt nicht wie ich das machen kann.
Gibt es eine Möglichkeit die Abfrage im VBA auszuführen?
Wenn jemand ein Beispiel hat wäre das sehr hilfreich.
So ein Quelltext mit einer SNMP Abfrage zum Beispiel, muss sich ja nicht unbedingt auf Drucker beziehen.
Habe schon versucht das hier zu testen aber damit kann ich nichts anfangen:
http://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=we ...
Eine Alternative zu VBA kann ich leider nicht nehmen weil die Werte in eine bestehende Excel Tabelle eingefügt werden sollen, welche automatisch die Druckkosten berechnet.
Freue mich über jede Hilfe
Erstmal zum Sachverhalt:
Ich habe mehrere Drucker (ca. 50) die über SNMP ansprechbar sind. Mein Ziel ist über eine Schaltfläche im Excel die Zählerstände der Drucker auszulesen und in von mir festgelegte Zellen reinzuschreiben.
Die OIDs habe ich bereits alle rausgelesen und kann die abfragen über die Eingabeaufforderung ausführen und bekomme das richtige Ergebnis raus.
Leider bin ich ziemlich neu auf dem Gebiet Visual Basic und weiß jetzt nicht wie ich das machen kann.
Gibt es eine Möglichkeit die Abfrage im VBA auszuführen?
Wenn jemand ein Beispiel hat wäre das sehr hilfreich.
So ein Quelltext mit einer SNMP Abfrage zum Beispiel, muss sich ja nicht unbedingt auf Drucker beziehen.
Habe schon versucht das hier zu testen aber damit kann ich nichts anfangen:
http://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=we ...
Eine Alternative zu VBA kann ich leider nicht nehmen weil die Werte in eine bestehende Excel Tabelle eingefügt werden sollen, welche automatisch die Druckkosten berechnet.
Freue mich über jede Hilfe
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 330660
Url: https://administrator.de/forum/snmp-abfrage-in-excel-ueber-vba-330660.html
Ausgedruckt am: 06.04.2025 um 09:04 Uhr
7 Kommentare
Neuester Kommentar

http://naterice.com/vbscript-snmp-queries/
http://www.vbsedit.com/scripts/network/snmp/scr_923.asp
Wenns Strings sind geht auch:
Gruß
http://www.vbsedit.com/scripts/network/snmp/scr_923.asp
Wenns Strings sind geht auch:
Set objSNMP = CreateObject("OlePrn.OleSNMP")
objSNMP.Open "10.10.1.1","public",2,1000
strValue = objSNMP.Get(".1.3.6.1.2.1.2.2.1.2.1")
objSNMP.Close
MsgBox strValue
OK...
also, der in dem von dir geposteten Link dargstellte Code ist eine Funktion, welche erst mal aufgerufen werden will.
Diese Funktion rufst du auf und übergibst aich in der folgenden Reihenfolge die entsprechenden Parameter:
Und eine Funktion kannnst du aus jeder Zelle aufrufen:
Hilfe dazu hier: http://www.herbert-kaiser.net/excel/kreis.php
Nachtrag:
Was mir gerade ein-/ auffällt:
Mit jeder Abfrage erhältst du aber nur immer die aktuellsten Zählerstände.
Ein Delta in Form eines Monatsverbrauches erzeugst du dir so nicht, da müsstest du dir den Wert schon über einen passenden Code in eine Zelle schreiben und mit jedem neuen Aufruf prüfen, was die jüngste Zelle ist, eine Zelle weiterspringen und dort dann den neuen Wert eintragen...
also, der in dem von dir geposteten Link dargstellte Code ist eine Funktion, welche erst mal aufgerufen werden will.
Diese Funktion rufst du auf und übergibst aich in der folgenden Reihenfolge die entsprechenden Parameter:
=SNMPGET([IP], [CommunityString], [OID])
- [IP] ist klar
- [CommunityString] ist i.d.R. public (sofern man nichts anderes an den Devices eingestellt hat)
- [OID] Dein abzufragender SNMP-Wert in bezifferter Benennung , so wie es aussieht, also z.B. 1.13.5.7....
Und eine Funktion kannnst du aus jeder Zelle aufrufen:
Hilfe dazu hier: http://www.herbert-kaiser.net/excel/kreis.php
Nachtrag:
Was mir gerade ein-/ auffällt:
Mit jeder Abfrage erhältst du aber nur immer die aktuellsten Zählerstände.
Ein Delta in Form eines Monatsverbrauches erzeugst du dir so nicht, da müsstest du dir den Wert schon über einen passenden Code in eine Zelle schreiben und mit jedem neuen Aufruf prüfen, was die jüngste Zelle ist, eine Zelle weiterspringen und dort dann den neuen Wert eintragen...