[英]Adding Outlook Attachments in VBA
我的代碼運行良好,直到附件出現。
我正在嘗試做的事情。
這是代碼
Dim SendTo As String
Dim Atmt As String
Dim ToMSg As String
For i = 2 To LastRow
Atmt = ThisWorkbook.Sheets(1).Cells(i, 3).Value
SendTo = ThisWorkbook.Sheets(1).Cells(i, 2)
If SendTo <> "" Then
ToMSg = DraftBox.Value
Send_Mail SendTo, ToMSg
End If
Next i
Unload Me
End Sub
Sub Send_Mail(SendTo As String, ToMSg As String)
Dim OutlookApp As Object
Dim OutlookMail As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
.To = SendTo
.CC = CC.Value
.BCC = BCC.Value
.Subject = Subject.Value
.Body = ToMSg
.attachments.add Atmt
.Send
我附上了相關的代碼。 它一直告訴我 Atmt 是空的。 請幫忙..
在Send_Mail
子中,您需要包含一個參數來傳遞附件路徑:
Sub Send_Mail(SendTo As String, ToMSg As String, Atmt as String)
然后當你調用Send_Mail
子時,傳遞你想要提供的參數:
Send_Mail SendTo, ToMSg, Atmt
我使用Atmt
的事實完全是任意的,並且基於您的示例。 你可以在你的子文件中調用任何你想要的名字。
您還可以通過將Atmt
聲明為任何特定Sub
范圍之外的Global
或Public
變量來使其工作。 它當前是在第一個 sub 中聲明的,因此當您嘗試在Send_Mail
sub 中使用它時,該變量Send_Mail
sub 來說是未知的,因此它告訴您它是空的。
不過,我會更多地采用第一種方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.