ms-accessmodulecdo.message

ms access module to add attachment from button


I am having the following code in a module, which it is send email with attachment to user.

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

I have a form with 8buttons and each button is send an email with an attachment. Now, I have in my module 8 times the same code with different attachment.

Is it possible to have only one time the above code and from the button to add the attachment?

Thank you.


Solution

  • Basically you want to add parameters to the procedure. And then pass in the e-mail address, etc. as arguments.

    This question should give you some ideas on how to do that: multiple argument subs vba