我在一个模块中有以下代码,它发送带有附件的电子邮件。
Public Sub EmailToUser()
Dim mail As Object ' CDO.MESSAGE
Dim config As Object ' CDO.Configuration
Set mail = CreateObject("CDO.Message")
Set config = CreateObject("CDO.Configuration")
config.Fields(cdoSendUsingMethod).Value = cdoSendUsingPort
config.Fields(cdoSMTPServer).Value = "my smtp server"
config.Fields(cdoSMTPServerPort).Value = 465
config.Fields(cdoSMTPConnectionTimeout).Value = 10
config.Fields(cdoSMTPUseSSL).Value = "true"
config.Fields(cdoSMTPAuthenticate).Value = cdoBasic
config.Fields(cdoSendUserName).Value = "e=mail"
config.Fields(cdoSendPassword).Value = "password"
config.Fields.Update
Set mail.Configuration = config
With mail
.To = "e-mail"
.From = "e-mail"
.Subject = "subject"
.AddAttachment strPathReport & FileName '<== My question.
.Send
End With
Set config = Nothing
Set mail = Nothing
End Sub
我有一个包含8个按钮的表单,每个按钮都会发送一封带附件的电子邮件。 现在,我在我的模块中有8次相同的代码和不同的附件。
是否可以只有一次上面的代码,并从按钮添加附件?
谢谢。
答案 0 :(得分:1)
基本上您想要为过程添加参数。然后传入电子邮件地址等作为参数。
这个问题可以为您提供一些如何做到这一点的想法:multiple argument subs vba