Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
396to400
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
396to400
396to400
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ordner und Unterordner alphabet öffnen

Ordner und Unterordner alphabet öffnen
16.03.2004 16:01:43
Thomas
Hi zusammen,
wie kann man denn die Daten aus einem Ordner mit mehreren Unterordnern auslesen und nach Ordnern sortiert ausgeben????

Ich hab es bis jetzt immer so gemacht:
With Application.FileSearch
'Öffnen d. Dateien
.LookIn = pfadm
.SearchSubFolders = True
.Execute msoSortByFileType
.FileType = msoFileTypeExcelWorkbooks
.Execute msoSortByFileName
For iCounter = 1 To .FoundFiles.Count
Workbooks.Open Filename:= _
.FoundFiles(iCounter) _
, UpdateLinks:=0
...
....
End With

So tut er mir aber alles, nach dateinamen sortiert in ein bestimmtes Sheet schreiben....
Ich brächte es aber so:
Ordner A, Unterordner B, Inhalt 1
Ordner A, Unterordner B, Inhalt 2
Ordner A, Unterordner C, Inhalt 2
usw.
Kann mir jemand weiterhelfen, wie ich die Reihenfolge der zu öffnenden Dateien ändere sodas ich bei dem Kopiervorgang(hier nicht aufgeführt) im Endeffekt dann nach Ordnern sortiert habe.....
Vielen Dank!!!!!!!!!
LG
Thomas

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

Betreff
Datum
Anwender
Anzeige
AW: Ordner und Unterordner alphabet öffnen
16.03.2004 20:18:26
Nepumuk
Hallo Thomas,
du hast zwei Möglichkeiten. Erstens du lässt den Filesearch in einer Schleife laufen und die Ordner nach deiner Reihenfolge durchsuchen. Zweitens du liest die Dateinamen und deren Pfad in ein Array ein, welches du anschließen nach dem Pfad sortierst.
Gruß
Nepumuk
AW: Ordner und Unterordner alphabet öffnen
17.03.2004 09:31:21
Thomas
Morgen!
ok. Scheinbar verstehe ich dann doch weniger von der Materie, als ich dachte....
Kannst Du mir vielleicht ein kurzes Beispiel zeigen???? Hoffe es ist nicht zu aufwendig für Dich.
Gruß
Thomas
AW: Ordner und Unterordner alphabet öffnen
19.03.2004 04:27:06
Nepumuk
Hallo Thomas,
deine Antwort habe ich leider gestern übersehen. So geht's:

Option Explicit
Public Sub suchen()
Dim intIndex As Integer, strArray() As String
With Application.FileSearch
.LookIn = "D:\Eigene Dateien"
.FileType = msoFileTypeExcelWorkbooks
.SearchSubFolders = True
.Execute
ReDim strArray(1 To .FoundFiles.Count)
For intIndex = 1 To .FoundFiles.Count
strArray(intIndex) = .FoundFiles(intIndex)
Next
End With
Call sortieren(1, UBound(strArray), strArray)
For intIndex = 1 To UBound(strArray)
Workbooks.Open Filename:=strArray(intIndex), UpdateLinks:=0
'        dein weiterer Code
Next
End Sub
Private Sub sortieren(intUgrenze As Integer, intOgrenze As Integer, strArray() As String)
Dim intIndex1 As Integer, intIndex2 As Integer, strElement As String, strSpeicher As String
intIndex1 = intUgrenze
intIndex2 = intOgrenze
strSpeicher = strArray(((intUgrenze + intOgrenze) / 2) \ 1)
Do
Do While strArray(intIndex1) < strSpeicher
intIndex1 = intIndex1 + 1
Loop
Do While strSpeicher < strArray(intIndex2)
intIndex2 = intIndex2 - 1
Loop
If intIndex1 <= intIndex2 Then
strElement = strArray(intIndex1)
strArray(intIndex1) = strArray(intIndex2)
strArray(intIndex2) = strElement
intIndex1 = intIndex1 + 1
intIndex2 = intIndex2 - 1
End If
Loop Until intIndex1 > intIndex2
If intUgrenze < intIndex2 Then Call sortieren(intUgrenze, intIndex2, strArray)
If intIndex1 < intOgrenze Then Call sortieren(intIndex1, intOgrenze, strArray)
End Sub


Code eingefügt mit: Excel Code Jeanie
Gruß
Nepumuk
Anzeige

112 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige