Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Einlesen nach Änderungsdatum

Einlesen nach Änderungsdatum
SkyValley
Hallo zusammen
Ich lese mit diesem Code Dateien ein, die von 1 bis 200 nummeriert sind.
Da aber ab und an in dem Ordner nicht alle 200, sondern nur ein Teil des ganzen sich befindet, kann es vorkommen, dass die aktuellste Datei die Datei 3 ist. Es befinden sich dann z.B. Dateien in der Nummerierung 150-3 da. Zur Zeit liest er dann nur die letzten drei in diesem Beispiel ein. Ich dachte, da wäre es sinnvoller nach Änderungsdatum der Dateien einzulesen. Habe aber leider keine Ahnung wie das funktioniert. Kann mir da jemand helfen?
Der Code:
Private Sub Daten_einlesen_Click()
Application.DisplayAlerts = False
Dim strPfad As String
Dim strDateiname As String
Dim lngAbZeile As Long
Dim lngFileCnt As Long
Dim wksDaten As Worksheet
Dim lngLetzteZeile As Long
Set wksDaten = ThisWorkbook.Worksheets("Daten")
Application.ScreenUpdating = False
strPfad = Sheets("Aktionen").Range("K10")
If Right(strPfad, 1)  "\" Then strPfad = strPfad & "\"
strDateiname = Dir(strPfad & "dtaold*.dif")
If strDateiname = "" Then Exit Sub
lngFileCnt = CInt(Mid(Split(strDateiname, ".")(0), 7))
Do While strDateiname  ""
Workbooks.Open Filename:=strPfad & strDateiname
lngAbZeile = wksDaten.Cells(wksDaten.Rows.Count, 1).End(xlUp).Row + 1
Workbooks(strDateiname).Sheets(1).Range("A3:AC1001").Copy
wksDaten.Cells(lngAbZeile, 1).PasteSpecial
Application.CutCopyMode = False
Workbooks(strDateiname).Close
lngFileCnt = lngFileCnt + 1
If lngFileCnt = 201 Then lngFileCnt = 1
strDateiname = Dir(strPfad & "dtaold" & Trim(Str(lngFileCnt)) & ".dif")
lngLetzteZeile = wksDaten.Cells(wksDaten.Rows.Count, 1).End(xlUp).Row
wksDaten.Range(wksDaten.Cells(lngAbZeile, 30), wksDaten.Cells(lngLetzteZeile, 30)).FormulaR1C1  _
_
= "=(RC29-295.95)/208.44"
Loop
End Sub
Vielen Dank.
Gruß
SKY
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Dateiliste, Array sortieren, Änderungsdatum
02.06.2011 12:47:33
fcs
Hallo SKY,
ich hab meinen Fundus an VBA-Projekten mal für dich durchsucht. Und deine Prozedur angepasst.
In der Beispeldatei findest du im VBA-Projekt 3-Module, die alle benötigt werden.
Zum Testen werden im Blatt "Daten" in Spalte D die Dateinamen und in Spalte E das Datum der letzten Änderung eingetragen. Das muss du im Code natürlich wieder entfernen.
https://www.herber.de/bbs/user/75135.xls
mod_Dateiliste: erstellt ein Daten-Array mit Informationen zu den Dateien in Verzeichnissen
mod_ArraySortieren: Sortiert die Zeilen eines 2-dimensionalen-Daten-Arrays nach einer oder mehreren Spalten.
mod_Dateneinlesen: Enthält deine Prozedur modifiziert.
Gruß
Franz
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
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