大家好,我们今日讲解“利用VBA发送附件电子邮件”,这节内容是“VBA信息获取与处理”教程中第五个专题“利用VBA发送电子邮件”的第一节。

第一节利用VBA发送附件电子邮件

这个专题的第一节是利用VBA发送附件电子邮件,用电子邮件发送一个附件,在我们日常工作中是随处可见的,也是我们大多数日常工作处理事务之一,如果你处在一个管理部门,下发一些通知类的附件是非常正常的工作,我们在工作中最常用的是群发。但这种邮件往往不能体现部门的针对性,很多职能部门对于邮件的处理是有区别对待的,对于这类群发的邮件往往重视不足。如果做到邮件的下发具有针对性能呢?我们来看下面的实例:上图中,我要利用VBA将某个安全生产的通知文件下发给各个工厂,同时提供了每个部门的邮箱(示例给的邮件是测试用的,均为同样的地址)。要发送的是附件和上述工作表的一个界面文件,该如何做到呢?

利用工作表的相关属性完成在工作表界面发送邮件

为了完成上面的任务,我们看下面的代码:Sub myNZ()   Sheets("Sheet1").Select   Application.EnableEvents = False   '设置附件的地址   strWJ = ThisWorkbook.Path & "\005关于安全生产的通知.docx"   i = 3   Do While Cells(i, 1) <> ""        '如果没有选择,那么将发送整个工作表的内容。        Range("B1:E" &Range("E2").End(xlDown).Row).Select        ActiveWorkbook.EnvelopeVisible = True '可以添加标题设置注释        With ActiveSheet.MailEnvelope            '设置添加的可选介绍字段文本到电子邮件正文,标题设置注释            strText = Cells(i, 2) & "" & Cells(i, 3) & " " & Cells(i, 4) & "您好:" & vbCrLf &"   附件是給您"& _                "的重要文件,请查收!"            .Introduction = strText            With .Item                .To = Cells(i, 1).Value '收件人                .CC = "nesang@189.cn"'抄送地址                .Subject = "重要文件发放" '邮件名称                '添加附件                 .Attachments.Add strWJ                 '发送邮件                 .Send            End With        End With  i = i + 1  Loop   ActiveWorkbook.EnvelopeVisible = False   Application.EnableEvents = True End Sub代码截图:

附带附件邮件的发送过程讲解

1)Application.EnableEvents= False 这句代码是屏蔽了事件的触发过程,这样做的目的是避免形成一个死循环2)strWJ =ThisWorkbook.Path & "\005关于安全生产的通知.docx"  这句代码的意义是设置附件的地址,注意是fullname,包括路径,ThisWorkbook.Path是指当前文件的路径,本文中的例子就是放在当前文件的同文件夹下面。附件是“005关于安全生产的通知.docx”,是一个word文档。3)Range("B1:E"& Range("E2").End(xlDown).Row).Select  这句代码的意义是选择发送工作表的范围,如果没有选择,那么将发送整个工作表的内容,由于我们的工作表中有发送按钮所以没有必要发送整个工作表,如图:上面红色部分是将要发生工作表的范围。4)  ActiveWorkbook.EnvelopeVisible = True        With ActiveSheet.MailEnvelope            '设置添加的可选介绍字段文本到电子邮件正文,标题设置注释            strText = Cells(i, 2) & "" & Cells(i, 3) & " " & Cells(i, 4) & "您好:" & vbCrLf &"   附件是給您"& _                "的重要文件,请查收!"            .Introduction = strText上面的代码首先设置为可以添加标题设置注释,然后设置这段文字为strText = Cells(i, 2) & "" & Cells(i, 3) & " " & Cells(i, 4) & "您好:" & vbCrLf &"   附件是給您"& "的重要文件,请查收!",添加的动作是.Introduction = strText。5)      With .Item                .To = Cells(i, 1).Value '收件人                .CC = "nesang@189.cn"'抄送地址                .Subject = "重要文件发放" '邮件名称                '添加附件                 .Attachments.Add strWJ                 '发送邮件                 .Send        End With上面的代码将对邮件的发送进行设置,.To = Cells(i, 1).Value 是设置收件人;.CC = nesang@189.cn是设置邮件的抄送地址;.Subject= "重要文件发放" 是设置邮件的名称;.Attachments.Add strWJ,是设置添加附件;.Send是发送邮件的动作。6) ActiveWorkbook.EnvelopeVisible= False   Application.EnableEvents = True上述代码是关闭邮件的注释及打开事件的触发。

邮件的发送效果

当我们单击:“利用VBA发送带附件的邮件”,这个时候会按行给每个行的邮件地址分别发送邮件,效果如下: 注意点:在发送邮件的时候,注意OUTLOOK要处于打开的状态。 本节知识点回向:如何实现工作表界面发送带附件的电子邮件?如何实现工作表界面指的范围内容的发送? 本专题参考程序文件:005工作表.XLSM VBA是利用Office实现自己小型办公自动化的有效手段,这是我对VBA的应用界定。在取代OFFICE新的办公软件没有到来之前,谁能在数据处理方面做到极致,谁就是王者。其中登峰至极的技能非VBA莫属!学习VBA是个过程,也需要经历一种枯燥的感觉,如太白诗云:众鸟高飞尽,孤云独去闲。相看两不厌,只有敬亭山。“水善利万物而不争”,绵绵密密,微则无声,巨则汹涌。学习亦如此,知道什么是自己所需要的,不要蜷缩在一小块自认为天堂的世界里,待到暮年时再去做自欺欺人的言论。要努力提高自己,用一颗充满生机的心灵,把握现在,这才是进取。越是有意义的事情,困难会越多。愿力决定始终,智慧决定成败。不管遇到什么,都是风景。看淡纷争,看轻得失。茶,满也好,少也好,不要计较;浓也好,淡也好,其中自有值得品的味道。去感悟真实的时间,静下心,多学习,积累福报。而不是天天混日子,也不是天天熬日子。在后疫情更加严峻的存量残杀世界中,为自己的生存进行知识的储备,特别是新知识的储备。学习时微而无声,利用时则巨则汹涌。我记得20年前自己初学VBA时,那时的资料甚少,只能看源码自己琢磨,真的很难。20年过去了,为了不让学习VBA的朋友重复我之前的经历,我根据自己多年VBA实际利用经验,推出了六部VBA专门教程。第一套:VBA代码解决方案是VBA中各个知识点的讲解,覆盖绝大多数的VBA知识点,初学必备;第二套:VBA数据库解决方案数据库是数据处理的专业利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作,适合中级人员的学习。第三套:VBA数组与字典解决方案  数组和字典是VBA的精华,字典是VBA代码水平提高的有效手段,值得深入的学习,是初级及中级人员代码精进的手段。第四套:VBA代码解决方案之视频是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。第五套:VBA中类的解读和利用是一部高级教程,讲解类的虚无与肉身的度化,类的利用虽然较少,但仔细的学习可以促进自己VBA理论的提高。第六套教程:《VBA信息获取与处理》是一部高级教程,涉及范围更广,实用性更强,面向中高级人员。教程共二十个专题,包括:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪切板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。如需要可以可以WeChat: NZ9668学习的过程也是修心的过程,修一个平静的心。在代码的世界中,心平静了,心情好了,身体自然而然就好。心静则正,内心里没有那么多邪知邪见,也就没有那么多妄想。利人就是利己。这些教程也是为帮助大家起航,助上我自己之力,我的上述教程是我多的经验的传递,大家可以根据以上资料1,3,2,6,5或者是4,3,2,6,5的顺序逐渐深入的逐渐学习。 每一分收获都是成长的记录,怎无凭,正是这种执着,成就了朝霞的灿烂。最后将一阙词送给致力于VBA学习的朋友,让大家感受一下学习过程的枯燥与执着: 浮云掠过,暗语无声,唯有清风,惊了梦中啼莺。望星,疏移北斗,奈将往事雁同行。阡陌人,昏灯明暗,忍顾长亭。多少VBA人,暗夜中,悄声寻梦,盼却天明。怎无凭!分享成果,随喜正能量有启发 点在看,转给朋友 约作者 请留言,直接交流

更多关联阅读

sql 发送邮件网络附件_利用VBA发送附件电子邮件相关推荐

  1. vba 添加outlook 签名_利用VBA发送附件电子邮件

    大家好,我们今日讲解"利用VBA发送附件电子邮件",这节内容是"VBA信息获取与处理"教程中第五个专题"利用VBA发送电子邮件"的第一节. ...

  2. igs无法分配驱动器映射表_利用VBA获取驱动器的信息

    大家好,我们今日讲解"VBA信息获取与处理"教程中第十七个专题"文件及文件夹信息的获取及操作"的第三节"利用VBA获取文件的信息和属性",这 ...

  3. oracle中修改多个字段默认值_利用VBA代码在已有的数据表中删除、添加、修改字段...

    大家好,今日继续给大家讲解VBA数据库解决方案的第21讲,如何利用VBA代码在已有的数据表中删除,添加,修改字段.这个内容是操作数据库的一项必修的内容,还望大家在实际工作中多利用,所以这节的知识,对于 ...

  4. python发送邮件廖雪峰_利用Python的smtplib和email发送邮件

    原理 网上已经有了很多的教程讲解相关的发送邮件的原理,在这里还是推荐一下廖雪峰老师的Python教程,讲解通俗易懂.简要来说,SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本 ...

  5. vba monthview控件64位_利用VBA获取文件的信息和属性

    大家好,我们今日讲解"VBA信息获取与处理"教程中第十七个专题"文件及文件夹信息的获取及操作"的第三节"利用VBA获取文件的信息和属性",这 ...

  6. 两封邮件合并转发_用Python发送自定义电子邮件

    电子邮件仍然是生活中的一个事实.尽管存在各种缺陷,但它仍然是向大多数人发送信息的最佳方式,尤其是以允许消息排队等待收件人的自动化方式. 我的工作重点之一是Feddora社区行动和影响协调员给人们一个关 ...

  7. cdo收取邮件_使用 CDO 发送测试电子邮件消息

    此脚本使用 CDO 发送测试电子邮件消息. Visual Basic Set objEmail = CreateObject("CDO.Message") set objConf ...

  8. java 发送邮件昵称_利用JavaMail发送QQ邮件

    一.RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文本邮件),一封简单的邮件包含邮件头和邮件体两个部分,邮件头和邮件体之间使用空行分隔. 邮件头包含的内容有: from字段 ...

  9. vba 循环读取单元格_利用VBA打开顺序文件,并读取

    大家好,疫情施虐,国外各地更有爆发的迹象,但无论怎样,我们一定要坚信,疫情终将会过去,曙光一定会到来.后疫情时代将会是一个全新的世界,很多理念都将被打破,大多数人不会再享受体制内的保护,对于我们每个人 ...

最新文章

  1. struts2配置default-properties
  2. 分布式之2PC与3PC提交协议
  3. 云存储服务器技术,​云存储技术构架-服务器运维
  4. python编写加密程序_python编写的维吉尼亚密码加解密程序
  5. 负数乘以正数溢出问题
  6. c语言 程序统计注释比例,C语言统计单词数量程序 超详解
  7. 查询英语单词 - 有道官方(一)
  8. AD库:如何从立创商城得到自己想要的库
  9. 水系图一般在哪里找得到_厦大赵金保团队EnSM:新型聚阴离子锌盐水凝胶电解质实现具有高择优取向沉积的超稳定、高可逆水系锌金属负极...
  10. 如何在Linux中删除符号链接?
  11. 人工智能 猴子摘香蕉问题
  12. windows 内网域电脑无法ntp时间同步
  13. Android APP连接 MySQL
  14. adb检测不到模拟器的解决方法
  15. js与朴php订单评价功能
  16. Umi3.5配置全局路由及菜单
  17. 如何使用 ssh 建立 socks 代理
  18. Diffusion模型详解
  19. gpedit.msc 打不开
  20. 美国计算机游戏设计专业排名,2018美国游戏设计留学院校排名

热门文章

  1. linux 源码 调试,开发一个Linux调试器(六):源码级逐步执行
  2. java memcached 存储对象_memcached—向memcached中保存Java实体需注意的问题
  3. 一篇文章学会Python函数重写,每天进步一个知识点
  4. python中统计计数的几种方法和Counter的介绍
  5. Python基础教程:copy()和deepcopy()
  6. mysql 修改表id值_修改数据库中表的id
  7. 人体姿态估计论文总结 (2D + 视频)
  8. rpm安装mysql服务(5.7举例)
  9. Redis RDB、AOF持久化详解
  10. 肖邦夜曲21_原装进口 | 肖邦夜曲全集 鲁宾斯坦 钢琴经典 2CD