HankMegens
Gebruiker
- Lid geworden
- 1 sep 2015
- Berichten
- 86
Hallo,
Middels een VBA code (geleend van het internet) maak ik op een formulier een selctie om een groep mesen te selecteren die een mail moeten ontvangen.
Echter dit werkt niet.
Om een en ander te onderzoeken heb ik de code aangepast om voor het versturen van de email de query te openen. Dit laatste doet hij wel degelijk, echter vandaaruit krijg ik een foutmelding.
De foutmelding zit op de regel: Set rs = db.OpenRecordset("SELECT voornaam, achternaam, email FROM Qemail") uit de code.
Deze code roep ik aan met de VBA code.
Ik zal hoogstwaarschijnlijk iets over het hoofd zien, maar wat?
Alvast bedankt.
Hank Megens
Middels een VBA code (geleend van het internet) maak ik op een formulier een selctie om een groep mesen te selecteren die een mail moeten ontvangen.
Echter dit werkt niet.
Om een en ander te onderzoeken heb ik de code aangepast om voor het versturen van de email de query te openen. Dit laatste doet hij wel degelijk, echter vandaaruit krijg ik een foutmelding.
De foutmelding zit op de regel: Set rs = db.OpenRecordset("SELECT voornaam, achternaam, email FROM Qemail") uit de code.
Code:
Public Sub SendgroupEmail()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim emailTo As String
Dim emailSubject As String
Dim emailText As String
Dim outApp As Outlook.Application
Dim outMail As Outlook.MailItem
Dim outlookStarted As Boolean
On Error Resume Next
Set outApp = GetObject(, "Outlook.Application")
On Error GoTo 0
If outApp Is Nothing Then
Set outApp = CreateObject("Outlook.Application")
outlookStarted = True
End If
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT voornaam, achternaam, email FROM Qemail")
Do Until rs.EOF
emailTo = Trim(rs.Fields("voornaam").Value & " " & rs.Fields("achternaam").Value) & _
" <" & rs.Fields("email").Value & ">"
emailSubject = "Amazing newsletter"
If IsNull(rs.Fields("voornaam").Value) Then
emailSubject = emailSubject & " for " & _
rs.Fields("voornaam").Value & " " & rs.Fields("achternaam").Value
End If
emailText = Trim("Hi " & rs.Fields("voornaam").Value) & "!" & vbCrLf
emailText = emailText & _
"Lorem ipsum dolor sit amet, consectetuer adipiscing elit. " & _
"Maecenas porttitor congue massa. Fusce posuere, magna sed " & _
"pulvinar ultricies, purus lectus malesuada libero, sit amet " & _
"commodo magna eros quis urna."
Set outMail = outApp.CreateItem(olMailItem)
outMail.To = emailTo
outMail.Subject = emailSubject
outMail.Body = emailText
outMail.Send
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
Set db = Nothing
If outlookStarted Then
outApp.Quit
End If
Set outMail = Nothing
Set outApp = Nothing
End Sub
Deze code roep ik aan met de VBA code.
Code:
Private Sub onderdeelkeuze_DblClick(Cancel As Integer)
Me.Requery
'DoCmd.OpenQuery "Qemail", acViewNormal
Call SendgroupEmail
End Sub
Ik zal hoogstwaarschijnlijk iets over het hoofd zien, maar wat?
Alvast bedankt.
Hank Megens