Sub neu()
Workbook("E:\n1.xls").BuiltinDocumentProperties(3).Value
End Sub
hier ein vorschlag. über pfad und pattern wählst du welche dateien (so = alle dateien in c:\windows). nach der loop-anweisung hast du alle autoren im array autoren() und kannst damit weiterarbeiten.
mfg
Sub autoren()
Dim fname As String, pfad as Sttring, pattern As String
Dim autoren(), i%
pfad = "c:\windows\"
pattern = "*.*"
fname = Dir(pfad & pattern)
Do While (fname <> "")
Workbooks.Open fname
i = i + 1
ReDim Preserve autoren(1 To i)
autoren(i) = ActiveWorkbook.BuiltinDocumentProperties(3).Value
fname = Dir()
Loop
End Sub
mfg
Private Function FileArray(path As String, strPattern As String)
Dim arrDateien()
Dim strDatei As String
strDatei = Dir(path & strPattern)
Do While (strDatei <> "")
i = i + 1
ReDim Preserve arrDateien(1 To i)
arrDateien(i) = strDatei
strDatei = Dir()
Loop
FileArray = arrDateien
End Function
Um den Excel-Autor mehrerer Dateien auszulesen, kannst Du den folgenden VBA-Code verwenden. Dieser Code öffnet alle Dateien in einem bestimmten Verzeichnis und liest den Autor aus.
Sub autoren()
Dim fname As String, pfad As String, pattern As String
Dim autoren() As String, i As Integer
pfad = "E:\DeinVerzeichnis\" ' Pfad zu Deinem Verzeichnis
pattern = "*.*" ' Alle Dateitypen
fname = Dir(pfad & pattern)
Do While (fname <> "")
Workbooks.Open pfad & fname
i = i + 1
ReDim Preserve autoren(1 To i)
autoren(i) = ActiveWorkbook.BuiltinDocumentProperties(3).Value ' Autor auslesen
fname = Dir()
Loop
' Hier kannst Du die Autorennamen weiterverarbeiten
End Sub
Dieser Code verwendet die ActiveWorkbook.BuiltinDocumentProperties(3).Value
-Methode, um den Excel-Autor auszulesen. Stelle sicher, dass Du den Pfad in der Variable pfad
entsprechend anpasst.
Fehlermeldung: Sub oder Function nicht definiert
Kein Autor angezeigt
Eine alternative Methode, um den Excel-Ersteller herauszufinden, wäre die Verwendung einer Funktion zum Auflisten aller Dateien in einem Verzeichnis. Hier ist ein Beispiel:
Private Function FileArray(path As String, strPattern As String) As Variant
Dim arrDateien() As String
Dim strDatei As String
Dim i As Integer
strDatei = Dir(path & strPattern)
Do While (strDatei <> "")
i = i + 1
ReDim Preserve arrDateien(1 To i)
arrDateien(i) = strDatei
strDatei = Dir()
Loop
FileArray = arrDateien
End Function
Verwende diese Funktion, um die Dateinamen zu erfassen und dann die Autoren wie im vorherigen Abschnitt auszulesen.
Autor aus einem spezifischen Verzeichnis abfragen:
pfad
in der autoren()
-Subroutine auf den gewünschten Ordner.Autorenliste in einer neuen Excel-Tabelle ausgeben:
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets.Add
For j = 1 To i
ws.Cells(j, 1).Value = autoren(j)
Next j
pattern
, um gezielt bestimmte Dateien (z.B. nur .xls
oder .xlsx
) auszulesen.1. Wie kann ich den Autor einer einzelnen Excel-Datei abfragen?
Du kannst einfach den folgenden Code verwenden:
Sub AutorEinzelnerDatei()
MsgBox ActiveWorkbook.BuiltinDocumentProperties(3).Value
End Sub
2. Welche Excel-Version benötige ich für diesen Code?
Der Code sollte in den meisten modernen Excel-Versionen (2010 und später) funktionieren, die VBA unterstützen.
3. Kann ich auch andere Dokumenteigenschaften abfragen?
Ja, Du kannst andere Eigenschaften mit den Indizes in BuiltinDocumentProperties
abfragen, z.B. Titel, Erstelldatum usw.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen