VBA信息获取与处理专题五第三节:发送带附件的电子邮件

《VBA信息获取与处理》教程(版权10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。

教程共两册,二十个专题。今日分享内容是:VBA信息获取与处理专题五第三节:发送带附件的电子邮件

【分享成果,随喜正能量】329有的人心大,什么都能装,所以烦恼很少,有的人心小,稍微装点东西就觉得撑的难受。所以快乐也好,烦恼也好,不是看外界,而是看自己的心界。

专题五 VBA利用CDO发送电子邮件

第三节 发送带附件的电子邮件

在上两讲中我们讲了简单邮件的发送,我们这讲的内容是讲解如何发送带附件的电子邮件。仍是利用上一讲中的自定义函数,这个自定义函数中包含了附件的处理。

1 发送带附件电子邮件的代码

为了实现附件的发送,我们看下面的代码:

Sub myNZB()

'带附件的邮件发送

Dim mySubject As String

Dim myFromAddress As String

Dim mySMTP_Server As String

Dim myToAddress As String

Dim myBodyFileName As String

Dim myMailsendpassword As String

'定义邮件主题

mySubject = "安全生产通知"

'定义发送邮箱

myFromAddress = "VBA6337@126.com"

mySMTP_Server = "smtp.126.com"

myMailsendpassword = "CUIAYZSDHOYZPH**" '授权码

'定义收件邮件地址

myToAddress = "VBA6337@OUTLOOK.COM"

'定义邮件内容

myBodyFileName = ""

'定义附件

myBRR = Array("D:\06VBA信息获取与处理(修订二版)\005关于安全生产的通知.TXT", "D:\06VBA信息获取与处理(修订二版)\005关于安全生产的通知.docx")

****

If NN = True Then

MsgBox "邮件发送成功!"

Else

MsgBox "邮件没有发送成功!"

End If

End Sub

代码的截图:

2 发送带附件电子邮件代码的讲解

1) '定义附件

myBRR = Array("D:\06VBA信息获取与处理(修订二版)\005关于安全生产的通知.TXT", "D:\06VBA信息获取与处理(修订二版)\005关于安全生产的通知.docx")

大家要留意,这个参数我定义了两个附件,一个是005关于安全生产的通知.TXT,一个是005关于安全生产的通知.docx,这两个附件有数组的形式进行了封装。

2)NN = SendEMailC(Subject:=mySubject, FromAddress:=myFromAddress, _

ToAddress:=myToAddress, MailBody:="", _

SMTP_Server:=mySMTP_Server, BodyFileName:=myBodyFileName, Mailsendpassword:=myMailsendpassword, Attachments:=myBRR)

以上代码中变量myBRR传递给了参数Attachments,这个参数是处理附件的,

3) If IsArray(Attachments) = True Then

' 附加附件的所有文件.

For N = LBound(Attachments) To UBound(Attachments)

' 如果为数组将每个文件传入

If Attachments(N) <> vbNullString Then

If Dir(Attachments(N), vbNormal) <> vbNullString Then

.AddAttachment Attachments(N)

End If

End If

Next

Else

' 不为数组则传入文件

If Attachments <> vbNullString Then

If Dir(CStr(Attachments), vbNormal) <> vbNullString Then

.AddAttachment Attachments

End If

End If

End If

以上代码是在邮件中添加附件,在添加前会确认附件是否存在。

3 发送附件电子邮件的实现效果

最后我们点击按钮发送电子邮件:

我们在OUTLOOK邮箱中查看邮件:

本节知识点回向:如何实现带附件的电子邮件发送?

本专题参考程序文件:005工作表.XLSM

我20多年的VBA实践经验,全部浓缩在下面的各个教程中,教程学习顺序:

相关推荐
特立独行的猫a3 分钟前
Tauri v2的Rust应用 → HarmonyOS(鸿蒙 PC)移植30分钟速成指南
开发语言·rust·harmonyos·tauri·移植·鸿蒙pc
迷迭香yy7 分钟前
大宗交易折溢价因子怎么挖掘本地化Python全流程实战
开发语言·人工智能·python
xieliyu.12 分钟前
UPD协议结构以及开发中注意事项
java·开发语言·笔记·java-ee
Yweir16 分钟前
AI大模型开发-Python介绍、版本说明
开发语言·人工智能·python
峥嵘life8 小时前
Android16 311Y3 EAP-TLS 网络连接失败分析与修复总结
android·开发语言·人工智能·php
mqiqe11 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
gugucoding11 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
Nebula_g12 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法
for_ever_love__12 小时前
python基础语法学习: 异常的传递性
开发语言·python·学习
依然鸣12 小时前
PTA团体程序设计天梯赛L1真题讲解L1-077-080
开发语言·c++·算法·深度优先·pat考试·图论