我試圖在Access 2010和Access 2003中使用VBA對電子郵件進行後期綁定。2003年給了我'無法完成操作。一次或多次參數值無效。' 2010年給了我'無效的程序調用或參數'。我已經完成了這一步,並且在底部附近的.send
處失敗。我是否設置了綁定錯誤?我試圖在不使用參考文獻中的Microsoft Object Library的情況下執行此操作。通過VBA發送帶有延遲綁定錯誤的電子郵件
謝謝。
'Refers to Outlook's Application object
Dim appOutlook As Object
'Refers to an Outlook email message
Dim appOutlookMsg As Object
'Refers to an Outlook email recipient
Dim appOutlookRec As Object
'Create an Outlook session in the background
Set appOutlook = CreateObject("Outlook.Application")
'Create a new empty email message
Set appOutlookMsg = appOutlook.CreateItem(olMailItem)
'Using the new, empty message...
With appOutlookMsg
strSQL = "SELECT Email FROM Employees WHERE " & sqlVar & " = True"
Set myR = CurrentDb.OpenRecordset(strSQL)
Do While Not myR.EOF
Set appOutlookRec = .Recipients.Add(myR!Email)
appOutlookRec.Type = olTo
myR.MoveNext
Loop
strSQL = "SELECT Email FROM Employees WHERE '" & user & "' = Username"
Set myR = CurrentDb.OpenRecordset(strSQL)
Set appOutlookRec = .Recipients.Add(myR!Email)
appOutlookRec.Type = olCC
.Subject = wonum
.Body = "Department: " & strDep & vbNewLine & vbNewLine & _
"Issue is at: " & strIssue & vbNewLine & vbNewLine & _
"Priority is: " & strPriority & vbNewLine & vbNewLine & _
"Complete by: " & strDate & vbNewLine & vbNewLine & _
"Description: " & strDesc
.Send
End With
好點。當我看到'.CreateItem(olMailItem)'我發現在代碼中的其他地方必須有一個'Const olMailItem = 0'。使用'Option Explicit'對我來說這麼自動化了很多年,所以當我考慮一個問題時我甚至都沒有想到它。 –
我添加了Option Explicit,發現了一些錯誤。但是我應該如何設置olTo和olCC?我將它們設置爲'Const olTO = 0',它在編譯正確後仍然給我同樣的錯誤。 (PS感謝明確的信息) – Grant
從OlMailRecipientType枚舉:http://msdn.microsoft.com/en-us/library/office/ff865653.aspx – HansUp