我需要帮助我的VBA代码。我想让它当用户点击按钮发送电子邮件,它会根据单元格("A1:A4")自动发送电子邮件。
例如,如果今天是2023年2月2日,它将发送3封电子邮件,分别来自2月6日、2月13日和2月20日的电子邮件。
我做了VBA代码,但主要的问题是它只发送电子邮件的最后一个单元格("A4")。
对于("A2")和("A3"),将不发送电子邮件
[![在此输入图像说明][1]][1]
Sub Send_Deferred_Mail_From_Excel()
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim xRg As Range
Set xRg = Range("A2:A4")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
'Send Email Using Excel VBA Macro Code
With OutlookMail
.To = "email"
.CC = ""
.BCC = ""
.Subject = "HI"
.Body = "HELLO"
'Send email on specific day & time
.DeferredDeliveryTime = Range("A2") + Range("A3") + Range("A4")
.Display 'or just put .Send to directly send the mail instead of display
End With
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub
2条答案
按热度按时间z31licg01#
请这样试一下.
在工作表(“Sheet1”)中列出:
宏将遍历“Sheet1”中的每一行,如果B列中有电子邮件地址,C:Z列中有文件名,则宏将使用此信息创建邮件并发送。
kmpatx3s2#