Hallo,
Ik wil dat de e-mails automatisch verzonden worden vanuit mijn MS access database. Ik gebruik MS access 2010 en Outlook 2010. Ik heb een module gemaakt AutoEmail en wordt opgeroepen via Private Sub Form_Timer() van navigatieformulier. Wanneer ik mijn navigatieformulier open de timer loopt maar geen e-mails worden verzonden. Ook geen foutcodes of iets dergelijks. Heeft dat iets te maken met de beveiliging van Outlook??
Module
Calling module
Ik wil dat de e-mails automatisch verzonden worden vanuit mijn MS access database. Ik gebruik MS access 2010 en Outlook 2010. Ik heb een module gemaakt AutoEmail en wordt opgeroepen via Private Sub Form_Timer() van navigatieformulier. Wanneer ik mijn navigatieformulier open de timer loopt maar geen e-mails worden verzonden. Ook geen foutcodes of iets dergelijks. Heeft dat iets te maken met de beveiliging van Outlook??
Module
Code:
Function GenerateEmail(MySQL As String)
On Error GoTo Exit_Function:
Dim oOutlook As Outlook.Application
Dim oEmail As MailItem
Dim MyEmpName As String
Dim rs As Recordset
Set rs = CurrentDb.OpenRecordset(MySQL)
If rs.RecordCount > 0 Then
rs.MoveFirst
Do Until rs.EOF
If IsNull(rs!Email) Then
rs.MoveNext
Else
If oOutlook Is Noting Then
Set oOutlook = New Outlook.Application
End If
Set oEmailItem = oOutlook.CreateItem(oIMailItem)
With oEmailItem
MyEmpName = DLookup("EmpName", "tbl_Employee", "[EmpId] = " & rs!EmpName)
.To = rs!Email
.Subject = "Task doe in 30 days Reminder for " & MyEmpName
.Body = "Task Id: " & rs!TaskId & vbCr & _
"Task Name: " & rs!TaskName & vbCr & _
"Employee : " & MyEmpName & vbCr & _
"Task Due : " & rs!DueDate & vbCr & vbCr & _
"This email is auto genarated from Task Database, Please Do Not Reply!"
'.Display
.Sent
rs.Edit
rs!dateemailsent = Date
rs.Update
End With
Set oEmailItem = Nothing
Set oOutlook = Nothing
rs.MoveNext
End If
Loop
Else
'Do Nothing
End If
rs.Close
Exit_Function:
End Function
Calling module
Code:
Private Sub Form_Timer()
Me.TextTime.Value = Format(Time, "HH:mm:ss AM/PM")
Static iCount As Integer
iCount = iCount + 1
If iCount = 60 Then
Me.TimerInterval = 0
Call GenerateEmail("SELECT * FROM qryDuein30Days")
If Me.TimerInterval - 125 Then
End If
Exit Sub
End If
End Sub