如何使用Excel发送邮件?

假设你有一个Excel,其中列出了所有收件人的信息,如下所示:

如何使用Excel发送邮件?

如果需要向列表中的每个用户发送一封邮件,最好使用当前记录生成一个附件,并且格式如下:

姓名, 发送消息

你应该怎么办?一个一个拷贝发送?用python?
答案是,都不用,Excel自己解决。
通过本文,你将知道以下问题的答案:

什么是VBA

VBA能够做什么

怎么编辑VBA

如何将VBA保存到Excel文件

为你的VBA脚本创建一个快捷键

VBA如何创建一个Excel文件

VBA如何将本Excel中的数据读出并写到另一个文件

VBA如何生成并发送一个邮件?

发送邮件过程总述

1. 什么是VBA

根据微软官网的解释:

Office Visual Basic for Applications (VBA) 是事件驱动的编程语言,可以借助它扩展 Office 应用程序。

https://docs.microsoft.com/zh-cn/office/vba/api/overview/

根据官网定义,我们不难理解,VBA是用来扩展Office软件功能的一门编程语言。并且VBA不仅仅可以用在Excel,还能用在Outlook,Access,Word等Office软件中。
这就为我们使用VBA读取Excel内容并发送邮件奠定了基础。

2. VBA能够做什么

作为一门编程语言,理论上讲,VBA可以做到任何编程语言可以做到的事情,比如:

根据Excel中数据进行数据统计,并生成报表

访问网络,并进行数据采集(网络爬虫)

进行数据迁移,过滤...

可以说,只要有Office软件存在的地方,VBA都可以有用武之地。

3. 怎么编辑VBA

编辑VBA的时候,通常使用Visual Basic编辑器进行。要访问Visual Basic编辑器,需要到功能区的"开发工具"选项卡中查找。

在手动启用"开发工具"选项卡之前,它默认是禁用掉的,我们可以通过如下方式启用"开发工具"选项卡:

在 “文件” 选项卡上,选择 “选项” 以打开 “选项” 对话框。

选择该对话框左侧的 “自定义功能区”。

在该对话框左侧的 “从下列位置选择命令” 下,选择 “常用命令”。

在该对话框右侧的 “自定义功能区” 下,从下拉列表框中选择 “主选项卡”,然后选中 “开发工具” 复选框。

选择“确定”。

备注:在 Office 2007 中,显示 “开发工具” 选项卡的方法是选择 Office 按钮,选择 “选项”,然后在 “选项” 对话框的 “常用” 类别中选中 “在功能区显示‘开发工具’选项卡” 复选框。
https://docs.microsoft.com/zh-cn/office/vba/library-reference/concepts/getting-started-with-vba-in-office

启用"开发工具"选项卡之后,要编辑VBA就很简单了,只要切换到"开发工具"选项卡,点击"Visual Basic"按钮,就会弹出Visual Basic编辑器了:

点击 "Visual Basic" 按钮

如何使用Excel发送邮件?

弹出Visual Basic编辑器

如何使用Excel发送邮件?


在弹出的"Visual Basic" 编辑器中,我们可以看到,左侧显示了工程框和属性框。
在工程框中,列出了当前以打开的所有的Excel文件信息,如图所示,当前,我打开了两个Excel文件,分别为 "工作簿2.xlsx" 和 "工作簿4)。

双击左侧"工作簿2.xlsx"节点下的 "Microsoft Excel 对象" -> Sheet1(Sheet1) ,在右侧就会显示编辑器的编辑区:

如何使用Excel发送邮件?

让我们写一行代码,打个招呼,复制如下代码到编辑区:

Sub SayHello() MsgBox "Hello" End Sub

点击工具栏的运行图标,如图所示:

如何使用Excel发送邮件?

然后程序会弹出一个对话框,让你选择一个宏,来执行,如下:

如何使用Excel发送邮件?

在对话框中,我们看到了我们定义的SayHello,选中它,点击右侧的"运行"按钮。
现在,激动人心的时刻到来了,程序弹出了一个对话框:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpzzzg.html