Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: neusten ordner finden und in zelle eintragen

neusten ordner finden und in zelle eintragen
18.12.2013 15:02:05
tom
hallo forum!
ich finde leider keine antworten in den bisher gestellten fragen.
bei folgendem problem brauche ich bitte eure hilfe:
in einem netzwerk-verzeichnis wird jeden tag um ca. 23:00 ein ordner mit dem aktuellen datum erstellt (ordnername: 20131217). der inhalt des ordner interessiert mich nicht.
über den scheduler wird ab 07:00 eine excel-datei gestartet, welche mehrere vba-markos ablaufen lässt, gesichert und wieder beendet.
in dieser xlsm-datei soll nun in einer zelle der name des jüngsten ordners vom netzwerkverzeichnis (X:\ABT\TEAM\PROJ\ eingefügt werden.
vielen dank im voraus
grüße tom

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: neusten ordner finden und in zelle eintragen
19.12.2013 10:14:38
Björn
Hallo,
wenn wirklich jeden Tag ein Verzeichnis erstellt wird, dann erhälst Du mit diesem Ausdruck das Verzeichnis vom Vortag:
"(X:\ABT\TEAM\PROJ\" + CStr(Year(Date - 1)) + CStr(Month(Date - 1)) + CStr(Day(Date - 1))
Hier wird immer das aktuelle Systemdatum - 1 Tag verwendet, um Jahr, Monat und Tag zu ermitteln.
Das liefert natürlich nur das richtige Ergebnis, wenn Du nicht um 23:30h das Makro ausführst oder das Systemdatum falsch ist.
Falls du um 23:30h das ausführen möchtest, muss du noch eine Schleife mit der aktuellen Systemzeit drehen.
Hoffe, das hat geholfen.
Gruß
Björn B.

Anzeige
AW: neusten ordner finden und in zelle eintragen
19.12.2013 10:23:21
fcs
Hallo Tom,
hier ein Beispiel, wie man es lösen kann.
Gruß
Franz
Sub aaTest()
ThisWorkbook.Worksheets("Tabelle1").Range("B4").Value = _
"'" & fncGetLatestFolder(strFolder:="X:\ABT\TEAM\PROJ\")
End Sub
Public Function fncGetLatestFolder(strFolder As String) As String
'Ermittelt in einem Ordner den jüngsten Unter-Ordner, wenn Ordnernamen als Datum im _
Format JJJJMMTT angegeben sind
Dim strSubFolder As String, strFolderLatest As String, dblMax As Double
If Right(strFolder, 1)  "\" Then strFolder = strFolder & "\"
strSubFolder = Dir(strFolder, vbDirectory)
Do Until strSubFolder = ""
If IsNumeric(strSubFolder) Then
If Val(strSubFolder) > dblMax Then
strFolderLatest = strSubFolder
dblMax = Val(strSubFolder)
End If
End If
strSubFolder = Dir
Loop
fncGetLatestFolder = strFolderLatest
End Function

Anzeige
AW: neusten ordner finden und in zelle eintragen
19.12.2013 11:28:35
tom
hallo björn, hallo franz!
vielen dank für die lösungen.
ich hab mich für das script von franz entschieden (weils so bequem war :-))
danke !
grüße und noch schöne feiertage
tom
;

Forumthreads zu verwandten Themen

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