Clever-Excel-Forum

Normale Version: PDF nach Erstellungsdatum versenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Morgen,

ich verarbeite morgends eine Anzahl an Tabellen, die ich als PDF speichere.
Jetzt hätte ich gerne in Excel einen Button, der diesen Ordner durchsucht, und mir alle PDF die am heutigen Tag erstellt, bzw überschrieben wurden an eine vorgegebene Mail sendet. Da  in diesem Ordner zb immer 10 PDF als Archiv vorhanden sind, ich aber nur die aktuell geänderten versenden möchte. Und das sind jeden tag meist verschiedene.
Moin!
Nur als Teaser, sprich als Hilfe zur Selbsthilfe.
Direktfenster:
Code:
?FileDateTime(ThisWorkbook.FullName)
11.07.2018 07:29:34

Gruß Ralf
Das Ganze dann iVm dem FileSystemObject
Hallo, :19:

mit Outlook so: :21:


Code:
Option Explicit
Public Sub Main()
    Dim strAttachment As String
    Dim objOLApp As Object
    Dim strPath As String
    On Error GoTo Fin
    strPath = "C:\Temp\PDF"
    If Right(strPath, 1) <> "\" Then strPath = strPath & "\"
    Set objOLApp = CreateObject("Outlook.Application").CreateItem(0)
    With objOLApp
        .TO = "H2SO4@Irgendwas.de"
        .CC = "HNO3@Irgendwas.de"
        .Subject = "Betreff"
        .Body = "Inhalt"
        strAttachment = Dir$(strPath & "*.pdf")
        Do While strAttachment <> ""
            If Not IsEmpty(strAttachment) Then
                If Format(FileDateTime(strPath & strAttachment), "dd.mm.yyyy") = Format(Now, "dd.mm.yyyy") Then
                    .Attachments.Add strPath & strAttachment
                End If
            End If
            strAttachment = Dir$()
        Loop
        .Display
        '.Send
    End With
Fin:
    Set objOLApp = Nothing
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & " " & Err.Description
End Sub
Herzlichen Dank, funktioniert.

Habe zwar auch versucht mich in die Sache einzulesen, aber naja, alleine hät ich das gleube ich so nicht hinbekommen^^
(11.07.2018, 09:54)M.Wichmann schrieb: [ -> ]... aber naja, alleine hät ich das gleube ich so nicht hinbekommen^^

Hallo Mario, :19:

sag doch sowas nicht... :21:
Ist aber leider so, einen bestehenden Code an meine Bedürfnisse bzw Anforderungen etwas anzupassen bekomme ich  hin. Aber nen ganz neuen erstellen nicht.
Versuche doch bitte "einfach" mal zu verstehen, was die Tipps in Deinen bisher >50 Threads bewirken!
Ich habe irgendwo gelesen, dass Du den Job wechselst und gehe einfach mal davon aus, dass dort fundiertes Excel-Wissen vorausgesetzt wird.
Du tust Dir definitiv keinen Gefallen damit, Probleme maßgeschneidert durch ein Forum lösen zu lassen.

So sehr ich Case schätze:
Besser wäre es gewesen, Du hättest Dich mal mit dem Folder- und File-Objekt des FSO vertraut gemacht!
In meinem Link wird detailliert erklärt, wie man die Dateien durchschleift.
Dort gibt es auch die DateLastModified-Eigenschaft …
Case ging mit DOS-Mitteln an die Sache heran und benutzte mein zunächst vorgeschlagenes FileDateTime(), denn viele Wege führen nach Rom.

Wie auch immer:
Wenn ich denn mal sehen würde, dass Du Dich bemühst und einen fehlerhaften Code hochlädst und um Hilfestellung bittest, würde ich Dir auch umfangreicher helfen.
Momentan bewerte ich Deine "Hilflosigkeit" eher als Faulheit!

Nix für ungut (siehe auch meine Signatur),
Ralf
Ich versuche immer erst mir selbst zu helfen, bevor ich hier was reinstelle!!
Auch versuche ich, wenn ich hier was gefragt habe parallel selbst weiter.
Wie ich schon schrieb, ich versuche immer im Netz etwas zu finden, und das dann an meine Sachen anzupassen.
Ich habe in letzter Zeit viele Sachen gemacht, wo ich hier oder woanders garkeine Unterstützung angefragt habe.(Zumal dieses das einzige Forum ist, das ich nutze)

Ich versuche sogar mit meinen bescheidenen Kenntnissen manchmal hier anderen zu helfen.