Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Datum aus ExcelName auslesen und umschreiben

Betrifft: Datum aus ExcelName auslesen und umschreiben von: Robin
Geschrieben am: 25.07.2014 09:53:01

Hallo Leute,
ich habe aus meiner Excel Datei den Dateinamen ausgelesen und als String gespeichert.

Nun hab ich den String mit dem Inhalt "Häufigste Besucher19_02_2014.csv"

Wie schaffe ich es, das Datum in der Form "19.02.2014" als Variable abzuspeichern?

Danke für eure Hilfe!

  

Betrifft: keine eindeutige Vorgaben ... von: der neopa
Geschrieben am: 25.07.2014 10:09:48

Hallo Robin,

... so z.B. ob das Datum immer in der Form "Tag_Monat_Jahr" vorliegt und immer am Endes des Dateinamens etc. Letzteres vorausgesetzt, dann mit einer Formel und dem Datumsformat in der Ergebniszelle z.B. so:

 AB
1Häufigste Besucher19_02_2014.csv"19.02.2014

Formeln der Tabelle
ZelleFormel
B1=VERWEIS(9^9;1*RECHTS(WECHSELN(LINKS(A1;LÄNGE(A1)-5); "_";"."); SPALTE(1:1)))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

Gruß Werner
.. , - ...


  

Betrifft: AW: keine eindeutige Vorgaben ... von: Robin
Geschrieben am: 25.07.2014 10:17:56

Hallo Werner,

ja, immer in der gleichen Form und am Ende des Dateinamens.
Wie schaffe ich es, das Datum im Makto als Variable habe, ohne dass ich den Dateinamen nochmal in eine Zelle schreiben muss?
Die Datei mit dem Namen "Häufigster Besucher ..." wird zuvor über das Makro der Zieldatei aufgerufen.

Danke!


  

Betrifft: da hilft Dir sicherlich jemand weiter ... von: der neopa
Geschrieben am: 25.07.2014 10:22:51

Hallo Robin,

... aus VBA halte ich mich außen vor, ich hab deswegen den Thread auch auf offen gestellt.

Gruß Werner
.. , - ...


  

Betrifft: Thread offen ... owT von: der neopa
Geschrieben am: 25.07.2014 10:24:11

Gruß Werner
.. , - ...


  

Betrifft: AW: Thread offen ... owT von: Nepumuk
Geschrieben am: 25.07.2014 10:38:50

Hallo,

ein Beispiel:

Public Sub Test()
    Dim strFileName As String
    Dim dtmFileDate As Date
    strFileName = "Häufigste Besucher19_02_2014.csv"
    dtmFileDate = DateValue(Replace(Mid$(strFileName, 19, 10), "_", "."))
    MsgBox dtmFileDate
End Sub

Gruß
Nepumuk


  

Betrifft: AW: Thread offen ... owT von: Robin
Geschrieben am: 25.07.2014 11:11:59

Sehr geil! Das war genau das was ich gesucht habe, vielen Dank!


  

Betrifft: Datumswert aus variablem Dateinamen ermitteln von: NoNet
Geschrieben am: 25.07.2014 11:01:58

Hallo Robin,

wenn der Dateiname variable ist, jedoch immer das Datum in der Form "TT_MM_JJJJ" enthält, könntest du das auch folgendermaßen ermitteln :

Sub Datum_Aus_Dateiname_Extrahieren()
    Dim regEx As New VBScript_RegExp_55.RegExp, matches
    Dim strN As String, datDatum As Date
    
    'strN = "Häufigste Besucher19_02_2014.csv"
    strN = [A1] 'Dateiname aus Zelle A1 auslesen
    regEx.Pattern = "\d\w{1}_\d\w{1}_\d\w{3}"
    
    If regEx.Test(strN) Then
        Set matches = regEx.Execute(strN)
        strN = matches(0).Value
        datDatum = CDate(Replace(strN, "_", "."))
    Else
        datDatum = 0
    End If
    
    MsgBox datDatum
End Sub
Salut, NoNet


  

Betrifft: Korrektur : regEx.Pattern = "\d{2}_\d{2}_\d{4}" von: NoNet
Geschrieben am: 25.07.2014 11:18:47

Hallo Robin,

sorry - ich hatte den Code aus einem anderen Beispiel abgewandelt, das richtige Pattern muss natürlich lauten :

regEx.Pattern = "\d{2}_\d{2}_\d{4}"
Gruß, NoNet


 

Beiträge aus den Excel-Beispielen zum Thema "Datum aus ExcelName auslesen und umschreiben"