Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1808to1812
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

VBA Änderungsdatum

VBA Änderungsdatum
09.02.2021 18:00:49
Mex
Servus Leute,
wie kann ich unter VBA in einem Ordner nach dem Änderungsdatum wählen? Sprich ich habe ein Ordner mit mehreren Dateien die so eingespeichert sind: - Einkauf-Januar / Einkauf-Februar usw..
Ich möchte immer die neuste erstellte auswählen ohne den Pfad immer ändern zu müssen im Makro.
Grüße

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Änderungsdatum
09.02.2021 18:25:58
Nepumuk
Hallo Mex,
ein Beispiel:
Option Explicit

Public Sub Beispiel()
    
    Dim objFileDialog As FileDialog
    
    Set objFileDialog = Application.FileDialog(fileDialogType:=msoFileDialogOpen)
    
    With objFileDialog
        
        .AllowMultiSelect = False
        .InitialFileName = "H:\210209\" 'Anpassen !!!
        If .Show Then .Execute
        
    End With
    
    Set objFileDialog = Nothing
    
End Sub

Gruß
Nepumuk
Anzeige
AW: VBA Änderungsdatum
09.02.2021 21:56:22
Mex
Hallo Nepumuk,
vielen Dank.
Zieht dieses Beispiel automatisch die Neuste Datei oder öffnet es mir nur das Fenster vom Pfad wo ich mir es dann selbst aussuchen muss? Weil ich habe bereits ein Makro das läuft aber es soll aus dem Pfad immer die neuste ziehen.
Hoffe konnte mich ausführlich ausdrücken.
Danke :)
AW: VBA Änderungsdatum
10.02.2021 07:43:15
MCO
Guten Morgen, Mex!
Nach der Namensgebung öffnte dieses Makro immer die neueste Datei, dabei werden vom aktuellen Monat aus die Monate rückwärts durchgegangen.
Mich wundert allerdings, dass deine Dateinamen keine Jahresangaben erhalten. Das macht nur Sinn, wenn nicht länger als 1 Jahr archiviert wird.
Sub neueste_öffnen()
Dim fso As Object
Dim datei As Object
Set fso = CreateObject("Scripting.Filesystemobject")
Set sig_ordn = fso.GetFolder("C:\Temp") 'anpassen
ini_monat = CDbl(Format(Date, "m"))
Do
For Each fil In sig_ordn.Files
If InStr(fil.Name, Format("01." & ini_monat & ".20", "mmmm")) > 0 Then Exit Do
Next
ini_monat = ini_monat - 1
If ini_monat = 0 Then ini_monat = 12
Loop
'Debug.Print fil.Path
Workbooks.Open fil
Set fso = Nothing
Set sig_ordn = Nothing
End Sub
Viel Erfolg!
Gruß, MCO
Anzeige
AW: VBA Änderungsdatum
10.02.2021 10:37:36
Nepumuk
Hallo Mex,
teste mal:
Option Explicit

Public Sub Beispiel()
    
    Const FOLDER_PATH As String = "H:\210209\" 'Anpassen - abschließenden Backslash nicht löschen !!!
    
    Dim lngMonth As Long
    Dim strFileName As String
    
    For lngMonth = 12 To 1 Step -1
        
        strFileName = Dir$(FOLDER_PATH & "*" & MonthName(lngMonth) & "*.xls*")
        
        If strFileName <> vbNullString Then
            
            Workbooks.Open Filename:=FOLDER_PATH & strFileName
            
            Exit For
            
        End If
    Next
End Sub

Gruß
Nepumuk
Anzeige
AW: VBA Änderungsdatum
10.02.2021 17:59:27
Mex
Hallo Nepumuk,
vielen Dank werde ich später testen. =)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige