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

Forumthread: VBA Mailanhang per Filter

VBA Mailanhang per Filter
23.09.2019 19:05:58
El
Liebes Excelforum,
ich habe einen VBA Code, der generierte Rechnungen automatisch per Mail versendet:
With olApp.CreateItem(0)
.to = strMailAdresse
.cc = "rechnungen@meineAdresse.de"
.Subject = strMailSubject
.body = strMailtext
.Attachments.Add strSpeicherort & strFileName
.Display
'.Send
End With
Bisher haben die Mails immer nur die Rechnung als Anhang (strSpeicherort & strFileName). Weitere Anlagen an die Rechnungen (z.B. Hotelbelege) füge ich der Mail momentan manuell hinzu. Nun würde ich gerne das ganze soweit verbessern, dass, sofern vorhanden, auch Anhänge beigefügt werden. Da sowohl Rechnung als auch jede Anlage im Namen immer die eindeutige Rechnungsnummer beinhalten, wäre es möglich alle Dateien anzuhängen, die dem Filterergebniss von *[Rechnungsnummer]* entsprechen. Im öffnenDialog kann ich z.B. bei Eingabe von *[Rechnungsnummer]* genau diese Liste erhalten. Hat mir jemand einen Tipp, wie ich das Vorhaben umsetzen kann? Vielen Dank im Voraus
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Mailanhang per Filter
23.09.2019 19:37:00
Nepumuk
Hallo,
im Prinzip so:
Public Sub Beispiel()
    
    Const FOLDER_PATH As String = "H:\Test\" 'Anpassen !!!
    
    Dim strFilename As String, astrFiles() As String
    Dim Rechnungsnummer As String
    Dim ialngIndex As Long
    Dim olApp As Object
    
    Rechnungsnummer = "123456"
    
    strFilename = Dir$(FOLDER_PATH & "*" & Rechnungsnummer & "*.*")
    Do Until strFilename = vbNullString
        Redim Preserve astrFiles(ialngIndex)
        astrFiles(ialngIndex) = FOLDER_PATH & strFilename
        ialngIndex = ialngIndex + 1
        strFilename = Dir$
    Loop
    
    Set olApp = CreateObject("Outlook.Application")
    
    With olApp.CreateItem(0)
        .to = strMailAdresse
        .cc = "rechnungen@meineAdresse.de"
        .Subject = strMailSubject
        .body = strMailtext
        For ialngIndex = LBound(astrFiles) To UBound(astrFiles)
            .Attachments.Add astrFiles(ialngIndex)
        Next
        .Display
        '.Send
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: VBA Mailanhang per Filter
23.09.2019 19:43:41
Oberschlumpf
Hi
ich hab eigtl die gleiche Lösungsidee wie Nepumuk, mein Code ist etwas kürzer, da ich den "Umweg" über die Array-Variable auslasse.
With objMail
.to = strMailAdresse
.cc = "rechnungen@meineAdresse.de"
.Subject = strMailSubject
.body = strMailtext
strFileName = Dir(strSpeicherort & "*[Rechnungsnummer]*")
Do Until strFileName = ""
.Attachments.Add strSpeicherort & strFileName
strFileName = Dir
Loop
.Display
'.Send
End With
Hilfts?
Ciao
Thorsten
Anzeige
AW: VBA Mailanhang per Filter
23.09.2019 20:48:01
El
@Nepumuk und @Oberschlumpf
Herzlichen Dank Euch beiden. Das funktioniert super, ich kannte die Dir Funktion noch nicht und habe noch nicht verstanden, warum "strFileName = Dir" funktioniert. Da werde ich mich jetzt mal reinlesen.
Als nächstes werde ich nun das Problem lösen, warum die Signatur verschwindet, sobald ich .body verwende. Aber dazu gibt es wahrscheinlich schon einiges hier. LG ElDjango
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
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