Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: JensK am August 27, 2024, 16:19:17

Titel: mails an mehrere Kontakte mit einer Mail senden
Beitrag von: JensK am August 27, 2024, 16:19:17
Hallo zusammen,

ich bin neu hier und sage allen ein Hallo. Ich beschäftige mich seit geraumer Zeit mit Access. Nicht weil ich es muß sondern weil es mir Spaß macht.
Hab auch schon ein paar Dinge ganz gut hinbekommen. Nur an einem beiße ich mir die Zähne aus.
Ich möchte aus einer Tabelle mehrere verschiedene Mailadressen mit einer Email versenden. Wenn ich alle Mails übernehme klappt das auch super. Ich möchte vorher aber selektieren zu was für einer Gruppe die Kontaktperson gehört. Ich habe eine Tabelle mit den Kontaktdaten. Ich habe hier mal meinen Code der mir aber immer den Fehler  3061 es wurden zu wenig Parameter übergeben bringt. Vielleicht hat ja einer ein Herz und kann mir weiterhelfen.
Dankeschön

 Public Function Serienmail()
    Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim objMail As clsMail
    Set db = CurrentDb
    Set rst = db.OpenRecordset("SELECT * FROM tblKontakte", dbOpenDynaset)
    Set objMail = New clsMail
    With objMail
       
        Do While Not rst.EOF
            .AnHinzufuegen rst!Email
            rst.MoveNext
        Loop
        .Betreff = ""
        .Inhalt = ""
        .Anzeigen
        .NeueMail
    End With
    Set objMail = Nothing
    rst.Close
    Set rst = Nothing
    Set db = Nothing
End Function


Titel: Re: mails an mehrere Kontakte mit einer Mail senden
Beitrag von: Debus am August 28, 2024, 18:10:35
Hey,

versuch das mal so


Sub SerienMail()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim olApp As Object
    Dim olMail As Object

   
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("qryEmailAdressen") 'Hier eine Abfrage auswählen, wo Du die entsprechenden Konakte vorher selektieren kannst!

   
    Set olApp = CreateObject("Outlook.Application")

   
    Do While Not rs.EOF
       
        Set olMail = olApp.CreateItem(0) ' 0 steht für eine neue Mail

        With olMail
            .To = rs!EMail '

            .Subject = "Dein Betreff hier"
            .Body = "Dein Nachrichtentext hier"

           
            '.Display

             ' oder

            .Send


        End With

        rs.MoveNext
    Loop

   
    rs.Close
    Set rs = Nothing
    Set db = Nothing
    Set olMail = Nothing
    Set olApp = Nothing

    MsgBox "E-Mails sind raus!"
End Sub




Gruß
Holger
Titel: Re: mails an mehrere Kontakte mit einer Mail senden
Beitrag von: JensK am August 30, 2024, 21:44:02
Hallo Holger,
hat geklappt. Vielen Dank