Laufwerksbuchstaben und Seriennummern in Excel auslesen
Schritt-für-Schritt-Anleitung
Um alle Laufwerksbuchstaben und die entsprechenden Seriennummern auszulesen, kannst du den folgenden VBA-Code verwenden. Dieser Code öffnet die Arbeitsmappe nur, wenn die Seriennummer eines bestimmten USB-Sticks übereinstimmt:
-
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineMappeName)", wähle "Einfügen" und dann "Modul".
-
Füge den folgenden Code in das Modul ein:
Option Explicit
Private Sub Workbook_Open()
Dim fs As Object
Dim Laufwerk As Object
Set fs = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
For Each Laufwerk In fs.Drives
Worksheets("Tabelle1").Range("A2").Value = Laufwerk.SerialNumber
Next
If Worksheets("Tabelle1").Range("A2").Value = Worksheets("Tabelle1").Range("A3").Value Then
Exit Sub
Else
ThisWorkbook.Close False
End If
End Sub
-
Ändere die Zelle A3 auf die gesuchte Seriennummer des USB-Sticks.
-
Schließe den VBA-Editor und speichere die Arbeitsmappe als "Excel-Arbeitsmappe mit Makros" (*.xlsm).
-
Teste die Arbeitsmappe, indem du den USB-Stick anschließt und die Datei öffnest.
Häufige Fehler und Lösungen
-
Fehler: Datei bleibt immer geöffnet, auch wenn die Seriennummer falsch ist.
- Lösung: Stelle sicher, dass die Zellen A2 und A3 korrekt referenziert sind. Überprüfe, ob die Seriennummer des USB-Sticks richtig eingegeben wurde.
-
Fehler: Die Seriennummer des USB-Sticks wird nicht angezeigt.
- Lösung: Überprüfe, ob der USB-Stick korrekt angeschlossen ist und ob das Laufwerk im Explorer sichtbar ist.
-
Fehler: Laufwerksbuchstabe wird nicht erkannt.
- Lösung: Achte darauf, dass der Code alle Laufwerke durchläuft. Der Code verwendet die
FileSystemObject
-Methode, um Laufwerksinformationen auszulesen.
Alternative Methoden
Es gibt verschiedene Möglichkeiten, die Seriennummer eines USB-Sticks auszulesen. Eine Möglichkeit ist die Verwendung von PowerShell:
- Öffne PowerShell als Administrator.
-
Führe den folgenden Befehl aus:
Get-WmiObject Win32_DiskDrive | Where-Object { $_.InterfaceType -eq "USB" } | Select-Object DeviceID, SerialNumber
Diese Methode gibt dir die Seriennummer sowie den Gerätenamen des angeschlossenen USB-Sticks zurück.
Praktische Beispiele
Hier ist ein einfaches Beispiel, um die Seriennummer eines USB-Sticks auszulesen und in Excel zu verwenden:
- Angenommen, der USB-Stick hat die Seriennummer "123ABC".
- Du trägst diese Seriennummer in die Zelle A3 ein.
- Wenn der USB-Stick angeschlossen ist, wird die Seriennummer in Zelle A2 ausgegeben.
- Wenn die Seriennummer übereinstimmt, bleibt die Datei geöffnet; ansonsten wird sie geschlossen.
Du kannst auch den Code anpassen, um die Seriennummer des Motherboards auszulesen, indem du WMI (Windows Management Instrumentation) in VBA verwendest.
Tipps für Profis
- Optimierung des Codes: Verwende
Error Handling
, um sicherzustellen, dass der Code nicht abstürzt, wenn ein Laufwerk nicht erreichbar ist.
- Sicherheit: Um den Schutz deiner Excel-Datei zu erhöhen, kombiniere die Überprüfung der Seriennummer mit weiteren Sicherheitsfunktionen, wie z.B. einem Passwortschutz.
- Versionskompatibilität: Achte darauf, dass dein Code in Excel-Versionen ab 2010 funktioniert, da ältere Versionen möglicherweise andere Methoden benötigen.
FAQ: Häufige Fragen
1. Wie kann ich die Seriennummer eines USB-Sticks in Excel anzeigen?
Um die Seriennummer anzuzeigen, kannst du den oben beschriebenen VBA-Code verwenden, der die Seriennummer in eine Zelle schreibt.
2. Funktioniert dieser Ansatz auch für andere Laufwerke?
Ja, du kannst den Code leicht anpassen, um die Seriennummern von Festplatten oder anderen USB-Geräten auszulesen.
3. Gibt es eine Möglichkeit, die Seriennummer des Motherboards auszulesen?
Ja, du kannst den WMI-Ansatz verwenden, um die Seriennummer des Motherboards auszulesen, indem du die Klasse Win32_BaseBoard
abfragst.