Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dateiliste in Excel

Forumthread: Dateiliste in Excel

Dateiliste in Excel
02.01.2003 15:05:59
Markus Wagner
Ich würde gerne alle Excel-Dateien (gleicher Aufbau) in einem Verzeichnis durchsuchen lassen, um dort eine Zelle in einem Arbeitsblatt auszulesen. Die Zahl der Excel-Dateien variiert. Außer diesen Excel-Dateien befinden sich keine weiteren Dateien in dem Verzeichnis.

Kann man die ausgelesenen Daten auch sortieren bzw. nur unterschiedliche Daten anzeigen lassen? Wer kann mir weiter helfen?

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Dateiliste in Excel
02.01.2003 15:09:40
andreas e
hallo, nachstehender code von Ramses (Rainer) liest dir aus gewähltem verzeichnis alle zb xls-files aus -
darauf kannst du aufsetzen und dann die einzelnnen dateien die zellen abfragen

sub List_Files_in_all_folder2()
' jedes Unterverzeichnis in eine Spalte
' ergänzt
' einschl unterordner von Ramses Rainer
Dim Dateiform As String
Dim Verzeichnis As String
Dim J As Integer
Dim K As Long
Dim Bereich As Range
Dim Dateiname As String
J = 1: K = 2
Dim I As Long, TotFiles As Long
Dim gefFile As String, dname As String
Dim Suchpfad As String, suchbegriff As String
Dim OldStatus As Variant
Suchpfad = InputBox("Geben Sie den Ordner an, der durchsucht werden soll.", "Pfad definieren", Application.DefaultFilePath)
If Suchpfad = "" Then Exit Sub
Dateiform = InputBox("Geben Sie den Dateityp an der gesucht werden soll", "Dateierweiterung", "*.xls")
If Dateiform = "" Then Exit Sub
Application.ScreenUpdating = True
OldStatus = Application.StatusBar
With Application.FileSearch
.LookIn = Suchpfad
.SearchSubFolders = True
' .SearchSubFolders = False
.Filename = Dateiform
If .Execute() > 0 Then
TotFiles = .FoundFiles.Count
Application.StatusBar = "Total " & TotFiles & " gefunden"
For I = 1 To .FoundFiles.Count
' ergänzt für Unterverzeichnis
' festellen aller Unterverzeichnisse und in Zeile 1 schreiben
Dim L As Integer
For L = Len(.FoundFiles(I)) To 1 Step -1
If Mid(.FoundFiles(I), L, 1) = "\" Then Exit For
Next L
If Verzeichnis = "" Then
Verzeichnis = Mid(.FoundFiles(I), 1, L)
Else
If Mid(.FoundFiles(I), 1, L) <> Verzeichnis Then
Verzeichnis = Mid(.FoundFiles(I), 1, L)
K = 2
End If
End If
Set Bereich = ActiveSheet.Range("A1:IV256").Find(Mid(.FoundFiles(I), 1, L), lookat:=xlWhole)
If Bereich Is Nothing Then
Cells(1, J) = Mid(.FoundFiles(I), 1, L)
J = J + 1
End If
Next I
' Dateienfeststellen
For I = 1 To Cells(1, Columns.Count).End(xlToLeft).Column
Dateiname = Dir(Cells(1, I) & Dateiform)
Do While Dateiname <> ""
Cells(Cells(Rows.Count, I).End(xlUp).Row + 1, I).Value = Dateiname
K = K + 1
Dateiname = Dir
Loop
Next I
' ******
End If
End With
Application.StatusBar = OldStatus
Application.ScreenUpdating = True
End Sub

gruß
andreas e

http://www.skripteundaufgaben.de viele kostenlose Downloads und Lösungsansätze zu EXCEL und mehr

Anzeige
Re: Dateiliste in Excel
02.01.2003 15:11:53
Chris
Dim sFile As String, sPath As String
Application.ScreenUpdating = False
sPath = "C:\Test"
If Right(sPath, 1) <> "/" Then sPath = sPath & "\"
sFile = Dir(sPath & "*.xls")
Do While sFile <> ""
Workbooks.Open sPath & sFile
zeilennr = Range("A65536").End(xlUp).Row + 1
Workbooks("Ergebnis.xls").Sheets(1).Cells(zeilennr, 1) = sFile
Workbooks("Ergebnis.xls").Sheets(1).Cells(zeilennr, 2) = Workbooks(sFile).Sheets(1).Range("A1")
Workbooks("Ergebnis.xls").Sheets(1).Cells(zeilennr, 3) = Workbooks(sFile).Sheets(1).Range("B1")
Windows(sFile).Close False
sFile = Dir()
Loop
Application.ScreenUpdating = True

Hallo Markus

sPath = "C:\Test" musst du anpassen

Das Makro schreibt in der Datei, die "Ergebnis.xls" lauten muss, in Spalte A den Dateinnamen, in Spalte B den Inhalt von Zelle A1 und in Spalte C den Inhalt von Zelle B1.

Gruss
Chris

Anzeige
;

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