Ersteller einer Datei in Excel auslesen
Schritt-für-Schritt-Anleitung
Um den Ersteller einer Datei in Excel auszulesen, kannst du den folgenden VBA-Code verwenden. Dieser Code nutzt die GetDetailsOf
-Methode, um den Besitzer einer Datei (z.B. einer INP-Datei) zu ermitteln.
- Öffne Excel und drücke
ALT + F11
, um den VBA-Editor zu öffnen.
- Füge ein neues Modul ein, indem du auf
Einfügen
> Modul
klickst.
- Kopiere und füge den folgenden Code in das Modul ein:
Sub NCProg()
Dim Eingabeaufforderung As Date
Var1 = InputBox("Geben Sie das Datum was sie einlesen möchten", "Abfrage", Date)
If Var1 = "" Then GoTo ende
Dim datei As Object
Dim objShell As Object
Dim objFolder As Object
Dim Pfad As String
Pfad = Cells(3, "B").Value
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace("\\DEKLI1S5020\5020-App$\Coscom\CNC\WINTOOL\" & Pfad & "\")
If objFolder Is Nothing Then GoTo ende
For Each datei In objFolder.Items
If LCase(datei) Like "*.inp" And DateValue(objFolder.GetDetailsOf(datei, 5)) = DateValue(Var1) Then
'Besitzer auslesen
Dim besitzer As String
besitzer = objFolder.GetDetailsOf(datei, 8)
Dim larX As Long
larX = 1 + Cells(Rows.Count, 1).End(xlUp).Row
'Daten schreiben
Cells(larX, 1) = datei.Name
Cells(larX, 2) = Date
Cells(larX, 3) = "X"
Cells(larX, 6) = Mid(besitzer, 8, (Len(besitzer) - 7))
End If
Next
ende:
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
- Schließe den VBA-Editor und führe das Makro aus.
Häufige Fehler und Lösungen
Alternative Methoden
Wenn du den Ersteller einer Datei in Excel nicht mit VBA auslesen möchtest, kannst du auch auf externe Tools oder Skripte zurückgreifen. Es gibt zahlreiche Online-Ressourcen und APIs, die dir helfen können, Datei-Metadaten auszulesen.
-
API-Methode: Du kannst Windows APIs verwenden, um auf die Datei-Metadaten zuzugreifen. Das erfordert jedoch zusätzliche Programmierung.
-
WMI (Windows Management Instrumentation): Eine weitere Möglichkeit ist die Verwendung von WMI, um Informationen über Dateien abzurufen. Hierzu kannst du entsprechende WMI-Abfragen in VBA integrieren.
Praktische Beispiele
Hier ist ein einfaches Beispiel, wie du den Ersteller einer Datei mit Excel VBA auslesen kannst:
Sub ErstellerAuslesen()
Dim datei As Object
Set datei = CreateObject("Scripting.FileSystemObject").GetFile("C:\Pfad\zu\deiner\datei.inp")
MsgBox "Ersteller: " & datei.Attributes
End Sub
Dieses Beispiel zeigt dir, wie du auf die Attribute einer spezifischen Datei zugreifen kannst. Du kannst den Code anpassen, um den Ersteller oder andere Informationen zu lesen.
Tipps für Profis
-
Nutze die Excel VBA GetDetailsOf
-Methode, um spezifische Dateieigenschaften auszulesen. Dies kann dir helfen, nicht nur den Ersteller, sondern auch andere wichtige Informationen zu erhalten.
-
Experimentiere mit verschiedenen Dateiformaten und passe deinen Code entsprechend an, um eine breitere Palette von Dateieigenschaften auszulesen.
-
Halte deinen Code sauber und dokumentiere ihn gut, um spätere Anpassungen zu erleichtern.
FAQ: Häufige Fragen
1. Wie kann ich den Ersteller einer Datei in Excel herausfinden?
Du kannst den Ersteller einer Datei in Excel herausfinden, indem du VBA verwendest und die GetDetailsOf
-Methode aufrufst, um die entsprechenden Dateieigenschaften auszulesen.
2. Funktioniert dieser Code auch mit anderen Dateiformaten?
Ja, der Code kann an andere Dateiformate angepasst werden. Stelle jedoch sicher, dass die Eigenschaften, die du abrufen möchtest, für das jeweilige Dateiformat verfügbar sind.