Nachfolgende Funktion ermittelt alle Dateien eines Ordners und gibt diese sortiert nach Datum/Zeit als String-Array zurück. Public Function DirReadFiles(ByVal sPath As String) As Variant Dim sFile As String Dim vDate As Variant Dim nCount As Long Dim i As Long ReDim sFiles(0) As String ' ggf. abschließenden Backslash anfügen If Right$(sPath, 1) <> "\" Then sPath = sPath & "\" ' alle Dateien ermitteln und in ein Array speichern nCount = -1 sFile = Dir$(sPath & "*.*") Do While Len(sFile) > 0 If sFile <> "." And sFile <> ".." Then ' Array bei Bedarf redimensionieren nCount = nCount + 1 If UBound(sFiles) < nCount Then ReDim Preserve sFiles(nCount * 2) End If ' Datum/Zeit ermitteln vDate = FileDateTime(sPath & sFile) ' Array füllen sFiles(nCount) = Format$(vDate, "yyyymmdd hhnnss") & sFile End If sFile = Dir$ Loop ' Array nach Datum/Zeit sortieren If nCount >= 0 Then ' Array auf korrekte Größe bringen ReDim Preserve sFiles(nCount) ' Array sortieren QuickSort sFiles(), 0, nCount ' Datum/Zeit aus dem Array extrahieren For i = 0 To nCount sFiles(i) = Mid$(sFiles(i), 16) Next i DirReadFiles = sFiles End If End Function Zum Sortieren des Arrays greifen wir auf den Tipp QuickSort in VB zurück. Beispiel: Private Sub Form_Load() Dim sPath As String Dim vFiles As Variant Dim i As Long Dim oItem As ListItem ' ListView-Spalten erstellen With ListView1.ColumnHeaders .Add , , "Dateiname" .Add , , "Datum/Zeit" End With ListView1.View = lvwReport ' alle Dateien aus D:\Temp ermitteln ' und sortier nach Datum/Zeit ins ListView übertragen sPath = "d:\temp\" vFiles = DirReadFiles(sPath) If Not IsEmpty(vFiles) Then For i = 0 To UBound(vFiles) Set oItem = ListView1.ListItems.Add() oItem.Text = vFiles(i) oItem.SubItems(1) = FileDateTime(sPath & vFiles(i)) Next i End If End Sub Dieser Tipp wurde bereits 31.747 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats April 2024 Skyfloy Chart von Microsoft und dazu noch gratis Tutorial für Microsoft Chart Controls für Microsoft .NET Framework 3.5 Neu! sevEingabe 3.0 Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |