Thema Datum  Von Nutzer Rating
Antwort
Rot Outlook Email zusammenfassen bei gleichem Empfänger
23.03.2021 11:27:48 LayzR
NotSolved

Ansicht des Beitrags:
Von:
LayzR
Datum:
23.03.2021 11:27:48
Views:
1509
Rating: Antwort:
  Ja
Thema:
Outlook Email zusammenfassen bei gleichem Empfänger

Hallo liebes Forum, 

ich habe untenstehenden Code geschrieben (und zusammenkopiert), um mittels VBA eine standardisierte Email per Outlook an eine Reihe von Empfängern zu versenden.

Die entsprechenden Empfänger sind im Sheet "Contacts" in einer Namerange hinterlegt, welche folgenden Aufbau hat:

 

Projektnummer Name Empfänger 1 Email 1 Name Empfänger 2 Email 2 Dateianhang
abcdef Max Mustermann max.mustermann@idk.de Hans Müller hans.müller@idk.de abcdef.xlsm
... ... ... ... ... ...

 

Der Code funktioniert soweit auch (ein paar Schönheitskorrekturen kommen noch), aber ein Feature würde ich gern einbauen, für das mir das KnowHow fehlt.

Es kann vorkommen, dass die gleichen Empfänger (1 & 2) verschiedene Projekte betreuuen. Im besten Fall sollten sie dann jedoch nur eine Email erhalten, wo alle "ihrer" Projektberichte im Anhang sind. Meine (Traum-)Vorstellung wäre, dass, NUR wenn empfänger 1 & 2 gleich sind, eine einzelne Email generiert wird, die alle Projektberichte im Anhang beinhaltet sowie alle entsprechenden Projektnummern in der Betreffzeile. Falls sie abweichen, sollen wieder eigenständige Emails generiert werden für jedes Projekt.

Ist dies über eine Schleife, Array oder ähnliches machbar?

Ich wäre über jede Hilfe dankbar!

Viele Grüße und schonmal vielen Dank für eure Unterstützung

LayzR

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
Private Sub CommandButton1_Click()
 
On Error GoTo ErrHandler
 
Dim wb As Workbook
Dim ws As Worksheet
Dim objOutlook As Object
Dim objEmail As Object
Dim arrRange As Range
Dim intRow As Integer
Dim iRows As Integer
Dim path As String
Dim strOrdner As String
Dim strBody As String
Dim i As Integer
 
 
Set wb = ThisWorkbook
Set ws = ThisWorkbook.Worksheets("Contacts")
 
Set arrRange = ThisWorkbook.Names("ContactsRange").RefersToRange
 
With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = "C:\Users\abcdef\Desktop"
    .Title = "Ordnerauswahl"
    .ButtonName = "Auswahl"
    .InitialView = msoFileDialogViewList
     
    If .Show = -1 Then
        strOrdner = .SelectedItems(1)
        If Right(strOrdner, 1) <> "\" Then strOrdner = strOrdner & "\"
    Else
        strOrdner = ""
    End If
End With
    If strOrdner = "" Then
        MsgBox ("Kein Ordner gew‰hlt")
        Exit Sub
    End If
     
 
For intRow = 1 To arrRange.Rows.Count
 
If Not IsEmpty(arrRange.Cells(intRow, 1)) = True Then
 
Set objOutlook = CreateObject("Outlook.Application")
Set objEmail = objOutlook.CreateItem(olMailItem)
 
strBody = "Dear " & arrRange.Cells(intRow, 2) & "," & "<br><br>"
    With wb.Worksheets("Options")
        For i = 6 To 9
            strBody = strBody & .Cells(i, "C").Value & "<br>"
        Next i
    End With
     
     
 
With objEmail
    .GetInspector.Display
    .To = arrRange.Cells(intRow, 3)
    .Subject = wb.Worksheets("Options").Range("C3").Value & " " & arrRange.Cells(intRow, 1)
    '.CC
     
    .Display
    .htmlBody = strBody
    '.Send
    .Attachments.Add strOrdner & arrRange.Cells(intRow, 4) & ".xlsm"
End With
 
Set objEmail = Nothing
Set objOutlook = Nothing
 
 
End If
 
Next intRow
 
ErrHandler: Exit Sub
     
     
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Outlook Email zusammenfassen bei gleichem Empfänger
23.03.2021 11:27:48 LayzR
NotSolved