gpt4 book ai didi

vba - 使用 VBA 从 Excel 工作表发送多个附件

转载 作者:行者123 更新时间:2023-12-02 19:56:39 25 4
gpt4 key购买 nike

我有现有代码可以从 Excel 文件中的工作表发送邮件 -

Sub CreateMail()

Dim objOutlook As Object
Dim objMail As Object
Dim rngTo As Range
Dim rngSubject As Range
Dim rngBody As Range
Dim rngAttach As Range

Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)

Application.ScreenUpdating = False
Worksheets("Mail List").Activate

With ActiveSheet
Set rngTo = .Range("B1")
Set rngSubject = .Range("B2")
Set rngBody = .Range("B3")
Set rngAttach = .Range("B4")

End With

With objMail
.To = rngTo.Value
.Subject = rngSubject.Value
.body = rngBody.Value
.Attachments.Add rngAttach.Value
.display 'Instead of .Display, you can use .Send to send the email _
or .Save to save a copy in the drafts folder
End With

Set objOutlook = Nothing
Set objMail = Nothing
Set rngTo = Nothing
Set rngSubject = Nothing
Set rngBody = Nothing
Set rngAttach = Nothing

End Sub

但是,我想包含一些附件,因此Set rngAttach = .Range("B4") 对此没有帮助。

对此有什么帮助吗?提前致谢!

最佳答案

将 .Attachments.Add 语句包含在循环中。像下面这样的东西可能会起作用

    For i = 4 To 6
.Attachments.Add Range("B" & i).Value
Next i

关于vba - 使用 VBA 从 Excel 工作表发送多个附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29251868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com