使用Excel和OutLook实现自动发送邮件

参考我的资源: https://download.csdn.net/download/paul50060049/11805973

问题的产生

我们在平时工作中可能会遇到要批量发送邮件的工作,例如财务部根据每个人的工资情况发放工资条到个人的邮箱,因为邮件因人而异,所以需要完成大量而细致的工作,工作繁琐,重复劳动多,非常适合批量发送。因此研究如何利用电子表格建立数据,利用OutLook来发送这些数据,要求发送具有表格格式的工资条。

使用工具

Excel及VBA技术
OutLook

数据准备

新建一个工作簿,保存为.xlsm(启用宏的文档)格式
建立两张表,第一张表数据为工资数据,我们用一个测试数据来建立。

序号员工编号姓名所属部门基本工资岗位工资绩效工资补贴其他邮件号
1M1001王小明办公室162003000486012151501
2M1002郭海英办公室151203000453611341501
3M1003史彩霞办公室145003000435010101501
4M1004徐桂玲销售部193003200579015001501
5M1005周君正销售部180003200540013501502
6M1006胡德成销售部163003200489012001502
7M1007常青销售部162003200486012151502
8M1008龙虎清技术部185003500555013501503
9M1009马文瓶技术部185003500555013501503
10M1010丁静雯技术部178003500534013351503
11M1011田保东技术部163003500489012001504
12M1012宋桂英技术部163003500489012001504
13M1013张玉萍生产部12000280036009001504
14M1014戴雪英生产部10500280031508001505
15M1015李扬生产部10300280030908001505
16M1016王剑飞生产部9800280029407351505
17M1017邱方明生产部8700280026106501506
18M1018刘小青生产部8500280025506301506
19M1019马克萍生产部8300280024906201506

第2张表是邮件地址表,我们用下面的测试数据

邮件号收件人地址邮件主题邮件内容粘贴附件
1paul50060049@sina.com自动发工资条测试
2xxx1@sina.com自动发工资条测试
3xxx2@sina.com自动发工资条测试
4xxx3@sina.com自动发工资条测试
5xxx4@sina.com自动发工资条测试
6xxx5@sina.com自动发工资条测试

xxx@sina.com是假的
其中邮件号是两张表关联的列,用于指示相关的邮件地址

开始准备工资数据

这里写图片描述

准备邮箱信息

新建一个表,把邮箱的测试信息复制后粘贴进去。
这里写图片描述

录入VBA代码

按 Alt + F11 组合键,弹出VBA代码编辑器,在当前Excel的文件目录下点击鼠标左键,弹出选择框,选择插入,选取点击模块。
粘贴代码:请下载我关联的资源,资源内包括完整的示例文件和代码

### 添加OutLook的引用
代码和内容都设定好了,还需添加引用,打开编辑器的工具-引用,选择Outlook插件即可,如图所示
![这里写图片描述](https://imgconvert.csdnimg.cn/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTgwMTI1MDAxNTEzMjIz?x-oss-process=image/format,png)

[外链图片转存失败(img-yRZvtjQ7-1569232622135)(https://img-blog.csdn.net/20180125001559712?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGF1bDUwMDYwMDQ5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

### 配置OutLook
在OutLook2016上配置默认邮箱,注意sina邮箱的配置较为容易,直接使用邮箱名和密码就好了,网易163和QQ邮箱需要开启pop3和smtp,同时需要启用客户端授权密码,要手机绑定才能配置。
![这里写图片描述](https://imgconvert.csdnimg.cn/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTgwMTI1MDAyMDI2NTY2?x-oss-process=image/format,png)
### 自动发送邮件
在发送邮件前请先运行OutLook程序,
然后在Excel2016上依次点击:视图->宏->查看宏->执行宏(getEmail_Info),即可实现自动发送邮件。
可以在程序中不显示发送过程的窗口。去掉

.Display

即可
下图是在网页上查看接收的邮件的截图:
![这里写图片描述](https://imgconvert.csdnimg.cn/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTgwMTI1MDAyOTUyMzk5?x-oss-process=image/format,png)

### 结束语
前一个版本需要繁琐的插入空行制作工资条的过程,发现会出现编辑上的错误,现在修改了一下程序,不需要对电子表格进行太多的处理了。
这是一个自动发送邮件的基本测试,当然我们可以依次为基础建立更多更复杂的应用,不仅在Excel中,也可以在其它开发工具上实现。
得心应手的工具是我们高效工作的保障,当我们要去砍柴前,就先磨一把锋利的刀吧。
测试前请修改一下邮箱,不要直接用,否则都发到我的邮箱中了

### 请参见本人上传的资源
资源名称相同
资源链接是:
https://download.csdn.net/download/paul50060049/11805973

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页