Anzeige
Archiv - Navigation
1324to1328
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
Inhaltsverzeichnis

Dateien auslesen - weshalb kommen gewisse nicht?

Dateien auslesen - weshalb kommen gewisse nicht?
14.08.2013 11:44:08
Peter
Guten Tag
Im Ordner "Austesten" sind folgende Dateien enthalten:
1) ABC.docx
2) xABCx.xlsx
3) cccc_ABC.xlsx
4) Exporte.xls
5) xxx _ABC2012.xls (nach dem dritten x ist kommt ein Leerschlag)
6) XXX_ABCl_F2013.xlsm
Mit untenstehendem Code sollten nach meinem Verständnis die Dateien 2, 3, 5, 6 aufgelistet werden. Datei 3 wird jedoch nicht aufgelistet.
Was ist mein Überlegungsfehler?
Gruss, Peter
Sub Auflisten()
sPfad = C:\Austesten\*.xls*"
Dateiname = Dir(sPfad)
Do While Dateiname  ""
Dateiname = Dir()
If InStr(Dateiname, "ABC") > 0 Then 'String anpassen
lRow = Sheets("Temp").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("Temp").Cells(lRow + 1, 1) = Dateiname
End If
Loop
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateien auslesen - weshalb kommen gewisse nicht?
14.08.2013 12:42:32
Luschi
Hallo Peter,
so wie Du den Code gepostest hast, kann er nicht funktionieren, da einmal doppelte Anführungsstriche fehlen in dieser Zeile:
sPfad = C:\Austesten\*.xls*"
Außerdem steht dieser Befehl an der falschen Stelle
Dateiname = Dir()
Komischer Weise werden bei diesem Suchmuster:
sPfad = C:\Austesten\*.xls" auch die xlsx und xlsm Dateien gefunden.
Mach es mal wie folgt und definiere bitte die Variablen, die eingesetzt werden.
Benutze unbedingt 'Option Explicit' am Anfang des Moduls

Sub Auflisten()
Dim sPfad As String, Dateiname As String
sPfad = "C:\Austesten\*.xls"
Dateiname = Dir(sPfad, vbNormal)
Do While Dateiname  ""
If InStr(Dateiname, "ABC") > 0 Then 'String anpassen
lRow = Sheets("Temp").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("Temp").Cells(lRow + 1, 1) = Dateiname
End If
Dateiname = Dir()
Loop
End Sub
Gruß von Luschi
aus klein-Paris

Anzeige
AW: Dateien auslesen - weshalb kommen gewisse nicht?
14.08.2013 13:54:31
Peter
Hallo Luschi
Vielen Dank. Das löst alle Probleme.
Ich habe nur eine verkürzte Version meines Codes gepostet, Zuoberst im Modul steht "Option Explicit" und die Variable sPfad wird im Code über eine Formel abgefüllt; beim Überschreiben habe ich den doppelten Anführungsstrich vergessen. Der Knackpunkt war, dass Dateiname = Dir() am falschen Ort platziert habe.
Meines Erachtens bewirkt der das Sternzeichen nach xls, dass auch *.xlsx und *.xlsm Dateien gefunden werden.
sPfad = "C:\Austesten\*.xls*"
Nochmals besten Dank und Gruss, Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige