Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1536to1540
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 listen....

Dateien listen....
05.02.2017 13:08:45
Helmut
Schönen Sonntag,
in meiner Datei konnte ich nach Änderungsdatum die Dateien auflisten.
Allerdings mit "FileSearch" das ja nicht mehr funktioniert in 2013....
Könnte mir bitte jemand das Makro umschreiben?
https://www.herber.de/bbs/user/111210.xlsm
Danke und Gruß
Helmut

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: DOS
05.02.2017 13:50:52
Fennek
Hallo,
es gibt einen anderen Ansatz, der auf DOS zurück geht:

{windowsTaste}r, cmd.exe
Infos mit dir /
für deinen Zweck (vermutlich)
dir /o-d /s c:\users\Name\documents\*.xlsx > c:\temp\MeineListe.txt
"MeineListe.txt" kann dann direkt von xl importiert werden.
mfg
Danke, aber.....
05.02.2017 14:04:15
Helmut
..damit bin ich überfordert :-)
Wie soll das in meiner Datei funktionieren?
Wie und wo soll das in mein Makro rein?
Trotzdem ein Danke :-)
AW: das war die einfache Variante
05.02.2017 14:13:50
Fennek
man kann das auch mit "Shell" in deinen Code integrieren, aber bei "VBA Basiskenntnissen" vermutlich kaum nachvollziehbar.
Anzeige
OK, hier habe ich einen Code....
05.02.2017 16:56:40
Helmut
..von Dir...
Sub Test()
F1 = Filter(Split(CreateObject("wscript.shell").exec("cmd /c dir ""c:\Alle Excel\*.xlsm"" /b/ _
on") _
.stdout.readall, vbCrLf), ".")
For i = 0 To UBound(F1)
Cells(i + 1, "A") = F1(i)
Next i
End Sub
Und wie und wo lese ich das Änderungsdatum der Datei aus?
AW: OK, hier habe ich einen Code....
05.02.2017 17:45:09
Fennek
Hallo,
es geht mir darum, dass du den Code verstehts, also auch mal im cmd-Fenster das dir /? aufrufst.
Die Sortierreihenfolge steuert der Schalter "/o-d", d.h. die neuesten Dateien zuerst. Der Schalter "/b" steuert das Ausgabeformat, zum Testen erst einmal nicht setzen.

Sub M_snb_dir()
sn = Filter(Split(CreateObject("wscript.shell").exec("cmd /c dir ""c:\tmp\*.xls"" /s/o-d"). _
stdout.readall, vbCrLf), ".")
Debug.Print UBound(sn)
For i = 0 To UBound(sn)
Cells(i + 1, "A") = sn(i)
Next i
End Sub
Diese Art von Code habe ich zuerst bei snb gesehen.
Der Ordner, hier "c:\tmp\" muss angepasst werden (auf die engliche Schreibweise). So funktioniert der Code nur, wenn die Dateinamen keine Umlaute enthalten. (Falls doch, sind ein paar Ergänzung notwendig)
Bitte zuerst in einem leeren Blatt ausprobieren.
mfg
Anzeige
habe den Code verstanden...
05.02.2017 18:45:37
Helmut
..aber in meine Datei hast Du anscheinend nicht geschaut ;-)
Denn: wie kann ich lt.meiner Datei die Dateien auflisten?
Letzter Monat-Letzte Woche-Gestern-Heute usw....
Gruß Helmut
AW: Dateien listen....
05.02.2017 19:51:14
Fennek
Hallo,
nachdem alle Dateien in einem Sheet stehen, würde ich mit Text-in-Spalten das Datum in eine eigene Spalte bringen.
Die Auswertung nach Zeiträumen geht dann z.B. mit Autofilter:
Die Parameter sind
Datum: operator 11
Tag, Criterium
1 xlFiterToday
2 xlFilteryesterday
3 xlFilterTomorrow
Woche
4 xlFilterThisWeek
5 xlFilterLastWeek
6 xlFilterNextWeek
Monat
7 xlFilterThisMonth
8 xlFilterLastMonth
9 xlFilterNextMonth
z.B.

sub Zaehlen()
with sheets("Liste").cells(1)
.autofilter 1, 7, 11 'aktueller Monat
msgbox .count-1
.autofilter
end with
end sub
(ungetestet)
mfg
Anzeige
Danke, gute Idee :-) so mach ich es-owt-Gruß
05.02.2017 20:17:21
Helmut

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige