我想通過VBA將查詢中的所有記錄寫入電子郵件。VBA基於查詢寫電子郵件正文,Loop?
MyBodyText = MailList("AccountName") & " - " & MailList("ExpirationDate")
這就是我目前的,它的工作,顯然,直到一點:它只寫入查詢中的第一條記錄。我知道我需要一些循環才能使它工作,但我不能爲我的生活弄清楚它。
編輯:郵件列表定義如下
Set MailList = db.OpenRecordset("qryDateEmail")
EDIT2:根據要求
Option Compare Database
Option Explicit
Public Function ExpirationDate()
Dim strSQL
Dim db As DAO.Database
Dim MailList As DAO.Recordset
Dim MyOutlook As Outlook.Application
Dim MyMail As Outlook.MailItem
Dim Subjectline As String
Dim BodyFile As String
Dim fso As FileSystemObject
Dim MyBody As TextStream
Dim MyBodyText As String
Dim MyDecision As String
Dim strReportName As String
Dim strEnroll As String
Dim strWho As String
Dim strEmail As String
Set fso = New FileSystemObject
Set MyOutlook = New Outlook.Application
Set db = CurrentDb()
Set MailList = db.OpenRecordset("qryDateEmail")
Subjectline$ = "Expiration Date" & " " & Date
Set MyMail = MyOutlook.CreateItem(olMailItem)
Do While Not MailList.EOF
MyBodyText = MailList("AccountName") & " - " & MailList("ExpirationDate")
MailList.MoveNext
Loop
MyMail.To = "" & ""
MyMail.CC = CurrentUser() & ""
MyMail.Subject = Subjectline$
MyMail.Body = MyBodyText
MyMail.Display
strEmail = Now()
strWho = CurrentUser()
Set MyMail = Nothing
Set MyOutlook = Nothing
End Function
在那裏,我有循環我一直在搞亂。
你能請張貼更多的代碼? –