variablen Dateinamen erstellen und dann sichern

Bild

Betrifft: variablen Dateinamen erstellen und dann sichern
von: Willi Wacker
Geschrieben am: 30.09.2015 16:12:57

Hallo,
nachdem ich jetzt seit einiger Zeit - gefühlt - alles durchforstet habe, wende ich mich an Euch: ich möchte eine Datei, die ich aus einer Outlook Mail extrahiert habe mit einem Namen und einer Variablen wegschreiben. Also:
Dateiname & Variable, wobei in der Variablen eine Uhrzeit, die ich vorher aus der Mail bekommen habe, steht. das Ganze sieht derzeit wie folgt aus:


Sub OutlookGetMail()
'
    Dim i_Ges As Integer, i As Integer
    Dim Ankunftszeit As String, Ankunftsdatum As String, Dateiname As String
    Dim olApp As Object, objFolder As Object, objItem As Object
    Dim Fname As Variant, FileNameFolder As Variant
    Set olApp = CreateObject("outlook.application")
    Set objFolder = olApp.GetNamespace("MAPI").Folders("WWacker").Folders("Posteingang"). _
Folders("Firma").Folders("Preise")    Set Out = GetObject("", "Outlook.Application"). _
GetNamespace("MAPI").Folders("WWacker").Folders("Posteingang").Folders("Firma").Folders("Preise")
    
    i_Ges = Out.items.Count
    i = 0
    While i < i_Ges
        i = i + 1
        With Out.items(i)
            Ankunft = .Receivedtime
            Ankunftsdatum = Left(Ankunft, 10)
            Ankunftszeit = Right(Ankunft, 8)
        End With
    Wend
        Dateiname = "Test_" & Ankunftsdatum & "_" & Ankunftszeit & ".csv" ' Das geht
        
    For Each objItem In objFolder.items
      If objItem.Subject Like "*" & "price list" & "*" Then
        If objItem.Attachments.Count > 0 Then
          With objItem.Attachments.item(1)
            If .fileName Like "*.csv" Then
              .SaveAsFile "C:\" & Dateiname     ' hier geht's nicht wichtig ist hier die  _
Ankunftszeit!
            End If
          End With
        End If
      Else
        GoTo KeinepassendeMail
      End If
    Next
KeinepassendeMail:
    Set objFolder = Nothing
    Set olApp = Nothing
End Sub

Schon mal Danke im Voraus. Ach ja, eigentlich will ich auch immer nur die neueste EMail Anfassen und die Datei extrahieren. SO bekomme ich allerdings immer alle Anhänge aus den vorhandenen Mails geliefert. :(
Willi

Bild

Betrifft: AW: variablen Dateinamen erstellen und dann sichern
von: Willi Wacker
Geschrieben am: 01.10.2015 09:59:08
Für alle die soetwas mal brauchen - ich habe jetzt eine Lösung:
die Zusammensetzung für den Dateinamen ist überflüssig. Man setzt in der Zeile .SaveAsFile:


.SaveAsFile "C:\Test_" & Format(Ankunft, "DDMMYYYY_HHMM") & ".csv"
Damit bekommt man eine Datei mit dem Namen:
Test_29092015_0842.csv
Gruß
Willi

 Bild

Beiträge aus den Excel-Beispielen zum Thema "variablen Dateinamen erstellen und dann sichern"