There are lots of reasons to send mail from an Excel macro. For example, when a sales sum reaches a certain value, a manager may want to know right away. While there are a few ways to send email from an Excel macro, the most commonly used method is to harness Outlook. That is a problem if you don't have Outlook installed on the computer you're using to open the spreadsheet. In that case, you can use CDO, which stands for Collaboration Data Object, instead.
Video of the Day
Press "Alt" and "F11" at the same time from the Excel spreadsheet to open the built-in Visual Basic editor.
Copy and paste the following code into the blank code window: Sub CDO_Mail_Small_Text() Dim iMsg As Object Dim iConf As Object Dim strbody As String ' Dim Flds As Variant
.Item("http://schemas.Microsoft.com/cdo/configuration/sendusing") = 2 ' .Item("http://schemas.Microsoft.com/cdo/configuration/smtpserver") _ ' = "Fill in your SMTP server here" ' .Item("http://schemas.Microsoft.com/cdo/configuration/smtpserverport") = 25 ' .Update ' End With
Replace "Fill in your SMTP server here" with the address of the SMTP server you wish to use.
Press "F5" to run the macro and send your email message.