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

Forumthread: Datei pfad name Dateieingeschaften und .. auslesen

Datei pfad name Dateieingeschaften und .. auslesen
25.08.2004 15:14:17
Viktor
Hallo zusammen
Kann mir Bitte jemand helfen: Ich muss eine Excel Datei vorbereiten der:
Dateien von eine vordefinierte Verzeichnis in Excel importiert, importierte Dateiname als Hyperlink, und immer richtung Rechts die Dateieingeschaften schreibt wie: Dateiname ohne endung, Author, Kategorie, Stichwörter, Kommentar, Datum, ErstelltVon ect.
Ist dass uberhaupt machbar? Danke und Gruss, Viktor
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei pfad name Dateieingeschaften und .. auslesen
OttoH
HAllo Viktor,
Du kannst per VBA in einer Schleife alle Dateinamen eines Verzeichnisses nacheinander einlesen (Befehl DIR). Wenn die Namen bekannt sind, kannst Du der Reihe nach alle Dateie nöffnen, die Dateieigenschaften über DocumentProperties auslesen und in eine Liste schreiben. Es sind allerdings VBA-Kenntnisse notwendig.
Gruß OttoH
Anzeige
AW: Datei pfad name Dateieingeschaften und .. auslesen
Viktor
Danke OttoH,
leider bin Newbee in VBA. Gruss Viktor
AW: Datei pfad name Dateieingeschaften und .. auslesen
OttoH
Hallo Viktor,
das Makro könnte etwa folgendermaßen aussehen:

Sub Dateieigenschaften()
Dim Pfad As String
Dim Dateiname As String
Dim i As Long
Dim Autor As String
Dim Kategorie As String
Dim Stichwort As String
Dim Kommentar As String
Pfad = "d:\Daten\Excel7\Kurs\"
Dateiname = Dir(Pfad & "*.xls")
i = 2
Do While Dateiname <> ""
Workbooks.Open Filename:=Pfad & Dateiname
Autor = ActiveWorkbook.BuiltinDocumentProperties(3)
Kategorie = ActiveWorkbook.BuiltinDocumentProperties(18)
Stichwort = ActiveWorkbook.BuiltinDocumentProperties(2)
Kommentar = ActiveWorkbook.BuiltinDocumentProperties(5)
ActiveWorkbook.Close (False)
Cells(i, 1).Activate
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=Pfad & Dateiname
Cells(i, 2) = Left(Dateiname, Len(Dateiname) - 4)
Cells(i, 3) = Autor
Cells(i, 4) = Kategorie
Cells(i, 5) = Stichwort
Cells(i, 6) = Kommentar
Dateiname = Dir
i = i + 1
Loop
End Sub


Sub PropertyNames()
Dim rw As Integer
Dim p As Object
rw = 1
Worksheets(1).Activate
For Each p In ActiveWorkbook.BuiltinDocumentProperties
MsgBox (rw & " " & p.Name)
rw = rw + 1
Next
End Sub

Gebraucht wird nur das erste Modul; das zweite habe ich nur angehängt, um die Nummern für die Eigenschaften angezeigt zu bekommen.
Gruß OttoH
Anzeige
AW: Datei pfad name Dateieingeschaften und .. auslesen
Viktor
Hallo OttoH,
Makro läuft super mit ausnahme das ich kann nur von lokale laufwerke und nur von excel Dateien auslesen.
Nochmal Danke und Gruss, Viktor.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel-Dateipfade und Dateieigenschaften automatisch auslesen


Schritt-für-Schritt-Anleitung

Um in Excel mit VBA die Dateipfade und Dateieigenschaften auszulesen, folge diesen Schritten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu:

    • Klicke im Menü auf Einfügen > Modul.
  3. Kopiere den folgenden Code in das Modul:

    Sub Dateieigenschaften()
       Dim Pfad As String
       Dim Dateiname As String
       Dim i As Long
       Dim Autor As String
       Dim Kategorie As String
       Dim Stichwort As String
       Dim Kommentar As String
    
       Pfad = "d:\Daten\Excel7\Kurs\"
       Dateiname = Dir(Pfad & "*.xls")
       i = 2
    
       Do While Dateiname <> ""
           Workbooks.Open Filename:=Pfad & Dateiname
           Autor = ActiveWorkbook.BuiltinDocumentProperties(3)
           Kategorie = ActiveWorkbook.BuiltinDocumentProperties(18)
           Stichwort = ActiveWorkbook.BuiltinDocumentProperties(2)
           Kommentar = ActiveWorkbook.BuiltinDocumentProperties(5)
           ActiveWorkbook.Close (False)
    
           Cells(i, 1).Activate
           ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=Pfad & Dateiname
           Cells(i, 2) = Left(Dateiname, Len(Dateiname) - 4)
           Cells(i, 3) = Autor
           Cells(i, 4) = Kategorie
           Cells(i, 5) = Stichwort
           Cells(i, 6) = Kommentar
    
           Dateiname = Dir
           i = i + 1
       Loop
    End Sub
  4. Passe den Pfad in der Zeile Pfad = "d:\Daten\Excel7\Kurs\" an dein Verzeichnis an.

  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus:

    • Drücke ALT + F8, wähle Dateieigenschaften und klicke auf Ausführen.

Dieses Makro liest die Dateinamen aus dem angegebenen Verzeichnis aus und speichert die Dateieigenschaften in Excel.


Häufige Fehler und Lösungen

  • Fehler: "Datei nicht gefunden"

    • Überprüfe, ob der Pfad korrekt ist und die Dateien vorhanden sind.
  • Fehler: "Zugriff verweigert"

    • Stelle sicher, dass du die nötigen Berechtigungen hast, um auf das Verzeichnis zuzugreifen.
  • Lösung für nicht-existente Dateieigenschaften

    • Einige Dateieigenschaften sind möglicherweise nicht in allen Excel-Dateien vorhanden. Überprüfe, ob die Datei die entsprechenden Eigenschaften hat.

Alternative Methoden

Wenn du keine VBA-Kenntnisse hast, kannst du auch folgende Methoden verwenden:

  • Power Query: Mit Power Query kannst du Daten aus Verzeichnissen importieren und bearbeiten.
  • Excel-Funktionen: Verwende die Funktionen CELL und INFO, um Pfadinformationen auszulesen, aber beachte, dass dies begrenzt ist.

Praktische Beispiele

  • Beispiel eines Makros, das nur die Dateinamen ausliest:

    Sub DateinamenAuslesen()
       Dim Pfad As String
       Dim Dateiname As String
       Dim i As Long
    
       Pfad = "d:\Daten\Excel7\Kurs\"
       Dateiname = Dir(Pfad & "*.xls")
       i = 1
    
       Do While Dateiname <> ""
           Cells(i, 1) = Dateiname
           Dateiname = Dir
           i = i + 1
       Loop
    End Sub
  • Dies liest lediglich die Dateinamen in die erste Spalte von Excel ein.


Tipps für Profis

  • Verwende On Error Resume Next, um Fehler im Makro zu ignorieren und die Ausführung fortzusetzen.
  • Optimiere das Makro, indem du nur relevante Dateieigenschaften ausliest, um die Verarbeitungsgeschwindigkeit zu erhöhen.
  • Experimentiere mit weiteren BuiltinDocumentProperties, um zusätzliche Metadaten zu extrahieren.

FAQ: Häufige Fragen

1. Wie kann ich den Pfad einer Datei in Excel anzeigen?
Du kannst den Dateipfad mit der Funktion =CELL("filename", A1) in eine Zelle einfügen, wobei A1 auf eine beliebige Zelle verweist.

2. Ist dies auch in Excel 365 möglich?
Ja, das Auslesen von Dateipfaden und Dateieigenschaften funktioniert auch in Excel 365 und anderen Versionen, die VBA unterstützen.

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