Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

MAC-Adresse der Netzwerkkarte auslesen

Forumthread: MAC-Adresse der Netzwerkkarte auslesen

MAC-Adresse der Netzwerkkarte auslesen
22.02.2005 11:57:56
Herbert
Hallo Forum!
Ich möchte für einen Kopierschutz gerne die MAC-Adresse via Makro auslesen. Wer hat da eine Idee oder schon einen Code?
Grüße,
Herbert
Anzeige
AW: MAC-Adresse der Netzwerkkarte auslesen
22.02.2005 12:03:34
Andi
Hi Herbert,
is zwar keine direkte Antwort auf Deine Frage, deshalb noch offen, aber unter
https://www.herber.de/index.html?https://www.herber.de/mailing/063599h.htm
ist beschrieben, wie man die Seriennummer der Festplatte auslesen kann.
Damit müsste sich doch auch ein Kopierschutz realisieren lassen, oder?
Schönen Gruß,
Andi
Anzeige
AW: MAC-Adresse der Netzwerkkarte auslesen
K.Rola
Hallo,
für welche Windows-Version soll das verwendet werden?
Gruß K.Rola
AW: MAC-Adresse der Netzwerkkarte auslesen
22.02.2005 13:00:00
Herbert
Für Windows2000 und XP
Gruß, Herbert
Zwar keine direkte Hilfe, aber...
Johannes
Die MAC bekommt man relativ leicht im CSV Format mit:
C:\>getmac /FO CSV /NH
"00-E0-00-AE-FE-FA","\Device\Tcpip_{C88E2A34-F82C-4730-BEF9-7D14DDA32A42}"
Wie ich finde koennte man diese Ausgabe mit VBA relativ leicht fuer eine Ueberpruefung hernehmen (zum Beispiel Arrays etc.), aber das koennen die Profis hier sicherlich besser. ;-)
Gruesse,
Johannes D.
Anzeige
AW: Zwar keine direkte Hilfe, aber...
bst
Auch Hallo,
getmac gibt's bei mir (win2k) wohl noch nicht. Hier tut's dann ipconfig /all ggf. mit einem GREP o.ä. hintendran.
Via VBA ist das wohl ziemlich heftig. Hier ein Versuch via WMI.
Habe aber ziemlich wenig Ahnung, ob das immer paßt ...
Benötigt einen Verweis im VBA auf Microsoft WMI Scripting x.y Library.
cu, Bernd
--
Option Explicit

Function GetMACAdresse() As String
Dim StrComputer As String
Dim objWMIService As ISWbemServices
Dim objWIMSet As ISWbemObjectSet
Dim objWMI As ISWbemObject
StrComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & StrComputer & "\root\cimv2")
Set objWIMSet = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration")
For Each objWMI In objWIMSet
If objWMI.Properties_("IPConnectionMetric") = 1 Then
GetMACAdresse = objWMI.Properties_("MACAddress").Value
Exit Function
End If
Next objWMI
End Function

Anzeige
AW: MAC-Adresse der Netzwerkkarte auslesen
K.Rola
Hallo,
für Win XP und 2000 funktioniert das(auch ohne Verweis):
Sub read_it()
Dim objWMIService As Object, objItem As Object, colItems As Object
On Error Resume Next
Set objWMIService = GetObject("winmgmts:\\" & "." & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration")
For Each objItem In colItems
MsgBox "Caption: " & objItem.Caption & Chr(10) & _
"MAC Address: " & objItem.MACAddress
Next
End Sub

Gruß K.Rola
Anzeige
AW: MAC-Adresse der Netzwerkkarte auslesen
bst
@K.Rola,
nett. Hast Du vielleicht eine gute Beschreibung / einen guten Link über dieses WMI-Teil ?
Gruß, Bernd
AW: MAC-Adresse der Netzwerkkarte auslesen
K.Rola
Hallo,
so weit ich mich erinnere, hab ich mir mal die gesamten WMI-tools von Microsoft.com
heruntergeladen.
Gruß K.Rola
OT: Dankeschön, dann schau ich mal ...
bst
.
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

MAC-Adresse der Netzwerkkarte auslesen in Excel


Schritt-für-Schritt-Anleitung

Um die MAC-Adresse der Netzwerkkarte über Excel auszulesen, kannst Du ein VBA-Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Excel öffnen: Starte Microsoft Excel (ab Version 2000).

  2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Modul hinzufügen: Klicke im Menü auf Einfügen > Modul.

  4. Code einfügen: Kopiere den folgenden VBA-Code in das Modul:

    Sub read_it()
        Dim objWMIService As Object, objItem As Object, colItems As Object
        On Error Resume Next
        Set objWMIService = GetObject("winmgmts:\\" & "." & "\root\cimv2")
        Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration")
        For Each objItem In colItems
            MsgBox "Caption: " & objItem.Caption & Chr(10) & _
            "MAC Address: " & objItem.MACAddress
        Next
    End Sub
  5. Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Drücke ALT + F8, wähle read_it aus und klicke auf Ausführen.

Jetzt wird ein Fenster angezeigt, das die MAC-Adresse Deiner Netzwerkkarte zeigt.


Häufige Fehler und Lösungen

  • Fehler beim Zugriff auf WMI: Stelle sicher, dass Du die richtige Windows-Version verwendest (Windows 2000 oder XP). Wenn Du Windows 10 benutzt, kann die Methode variieren.
  • Keine Anzeige der MAC-Adresse: Überprüfe, ob die Netzwerkkarte aktiv ist und korrekt installiert wurde.
  • VBA-Fehlermeldung: Stelle sicher, dass Du die richtigen Berechtigungen hast, um auf WMI zuzugreifen.

Alternative Methoden

Falls das Auslesen der MAC-Adresse über VBA nicht funktioniert, kannst Du auch die Eingabeaufforderung verwenden:

  1. Öffne die Eingabeaufforderung (CMD).
  2. Gib den Befehl ein: getmac /FO CSV /NH.
  3. Du erhältst die MAC-Adresse im CSV-Format, die Du dann in Excel importieren kannst.

Praktische Beispiele

Hier sind einige Beispiele, wie Du die MAC-Adresse in Excel weiterverarbeiten kannst:

  • Umwandeln in ein anderes Format: Wenn Du die MAC-Adresse umrechnen oder umwandeln möchtest, kannst Du die Ausgabe in Excel weiterverarbeiten. Zum Beispiel:

    =TEXT(A1, "00-00-00-00-00-00")
  • Anzeige in einer Tabelle: Du kannst die MAC-Adressen in eine Tabelle einfügen, um sie leichter zu verwalten, indem Du die Daten aus der CMD-Ausgabe importierst.


Tipps für Profis

  • Automatisierung: Du kannst das Makro so anpassen, dass es automatisch beim Öffnen der Excel-Datei die MAC-Adresse abruft.
  • Fehlerprotokollierung: Implementiere eine Fehlerprotokollierung im VBA-Code, um Probleme leichter zu erkennen und zu beheben.
  • Verwendung von Arrays: Nutze Arrays, um mehrere MAC-Adressen gleichzeitig auszulesen und zu verarbeiten.

FAQ: Häufige Fragen

1. Wie kann ich die MAC-Adresse in Excel formatieren?
Du kannst die Excel-Funktion TEXT verwenden, um die MAC-Adresse in das gewünschte Format zu bringen.

2. Funktioniert das Auslesen der MAC-Adresse auch auf Windows 10?
Ja, jedoch könnte es erforderlich sein, die Methode leicht anzupassen oder eine alternative Methode wie die CMD zu verwenden.

3. Kann ich die MAC-Adresse direkt in eine Zelle schreiben?
Ja, indem Du den Code anpasst, kannst Du die MAC-Adresse direkt in eine bestimmte Zelle Deiner Excel-Tabelle schreiben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige