如何将每张工作表从 Excel 发送到不同的电子邮件地址?
如果您有一个包含多个工作表的工作簿,并且每个工作表的单元格 A1 中都有一个电子邮件地址。 现在,您希望将工作簿中的每张工作表作为附件分别发送给单元格 A1 中的相应收件人。 你怎么能在 Excel 中解决这个任务? 本文,我将介绍一个 VBA 代码,用于将每个工作表作为附件从 Excel 发送到不同的电子邮件地址。
使用 VBA 代码将每张工作表从 Excel 发送到不同的电子邮件地址
以下 VBA 代码可以帮助您将每张工作表作为附件发送给不同的收件人,请这样做:
1。 按 Alt + F11 同时打开 Microsoft Visual Basic应用程序 窗口。
2。 然后,点击 插页 > 模块,然后将以下 VBA 代码复制并粘贴到窗口中。
VBA 代码:将每张工作表作为附件发送到不同的电子邮件地址
Sub Mail_Every_Worksheet()
Updateby ExtendOffice
Dim xWs As Worksheet
Dim xWb As Workbook
Dim xFileExt As String
Dim xFileFormatNum As Long
Dim xTempFilePath As String
Dim xFileName As String
Dim xOlApp As Object
Dim xMailObj As Object
On Error Resume Next
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
xTempFilePath = Environ$("temp") & "\"
If Val(Application.Version) < 12 Then
xFileExt = ".xls": xFileFormatNum = -4143
Else
xFileExt = ".xlsm": xFileFormatNum = 52
End If
Set xOlApp = CreateObject("Outlook.Application")
For Each xWs In ThisWorkbook.Worksheets
If xWs.Range("S1").Value Like "?*@?*.?*" Then
xWs.Copy
Set xWb = ActiveWorkbook
xFileName = xWs.Name & " of " _
& VBA.Left(ThisWorkbook.Name, VBA.InStr(ThisWorkbook.Name, ".") - 1) & " "
Set xMailObj = xOlApp.CreateItem(0)
xWb.Sheets.Item(1).Range("S1").Value = ""
With xWb
.SaveAs xTempFilePath & xFileName & xFileExt, FileFormat:=xFileFormatNum
With xMailObj
specify the CC, BCC, Subject, Body below
.To = xWs.Range("S1").Value
.CC = ""
.BCC = ""
.Subject = "This is the Subject line"
.Body = "Hi there"
.Attachments.Add xWb.FullName
.Display
End With
.Close SaveChanges:=False
End With
Set xMailObj = Nothing
Kill xTempFilePath & xFileName & xFileExt
End If
Next
Set xOlApp = Nothing
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
备注:在上面的代码中:
S1 是包含您要将电子邮件发送到的电子邮件地址的单元格。 请根据您的需要更改它们。
您可以在代码中指定自己的CC、BCC、Subject、Body;
要直接发送电子邮件而不打开以下新消息窗口,您需要更改 。显示 至 。发送.
3。 然后按 F5 运行此代码的键,并且每张工作表都会自动作为附件插入到新消息窗口中,请参见屏幕截图:
4、最后点击即可 送出 按钮逐封发送每封电子邮件。
最佳办公生产力工具
将小时转化为分钟 Kutools for Excel!
准备好增强您的 Excel 任务了吗? 利用的力量 Kutools for Excel - 您终极的节省时间的工具。 简化复杂的任务并像专业人士一样浏览数据。 以闪电般的速度体验 Excel!
为什么需要 Kutools for Excel
🛠️ 超过 300 项强大功能: Kutools 包含 300 多项高级功能,可简化您在 1500 多种场景中的工作。
📈 卓越的数据处理能力:合并单元格、删除重复项并执行高级数据转换 - 所有这些都不费吹灰之力!
⏱️ 高效的批量操作:当你可以聪明地工作时,为什么还要付出额外的努力呢? 轻松批量导入、导出、组合和调整数据。
📊 可定制的图表和报告:访问各种附加图表并生成富有洞察力的报告。
🗄️ 强大的导航窗格:通过强大的列管理器、工作表管理器和自定义收藏夹获得优势。
📝 七种类型的下拉列表:通过各种功能和类型的下拉列表使数据输入变得轻而易举。
🎓 用户友好:对于初学者来说轻而易举,对于专家来说是一个强大的工具。
***
***
*** ***
Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松
在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
每天将您的工作效率提高50%,并减少数百次鼠标单击!