Excel中用VBA实现Outlook发送当前工作簿

Excel中用VBA实现Outlook发送当前工作簿,首先按Alt+F11打开VBA编辑器,插入模块,并在工具-引用中勾选 Microseft Outlook .0 Object Library(其中为你Microseft Outlook的版本号。

vbnet 复制代码
Sub 发送邮件()
'保存当前excel
ThisWorkbook.Save

'让excel连接outlook 要将工具/引用中的Microseft Outlook *.0 Object Library(其中*为你Microseft Outlook的版本号)选上
Dim 信差 As Outlook.Application
Set 信差 = New Outlook.Application
'创建邮件实例
Dim 新邮件 As MailItem
Set 新邮件 = 信差.CreateItem(olMailItem)
'获取当前工作簿完整路径
Dim filePath As String
    filePath = ThisWorkbook.FullName
    'MsgBox filePath
    
    With 新邮件
        '设置收件人地址
        .To = ""
        '设置抄送收件人地址
        .CC = ""
        '设置邮件主题
        .Subject = ""
        '设置邮件内容
        .Body = ""
        '设置附件
        .Attachments.Add (filePath)
        '显示UI
        '.Display
        '发送邮件
        .Send
    End With
    
    ' 清理
    Set 新邮件 = Nothing
    Set 信差 = Nothing
    
End Sub
相关推荐
优选资讯1 小时前
Excel 批量打印标签的完整流程
excel
VBA63372 小时前
AI批量PDF数据抓取工具
vba
雪宫街道2 小时前
SpringBoot - POI实现Excel 导入与导出
spring boot·后端·excel
Data-Miner21 小时前
数据分析,除了Excel数据透视表,还有什么工具?——2026 专业精选推荐榜
microsoft·数据分析·excel
白帽攻防录1 天前
SRC 挖洞:Outlook 五个预览窗格 RCE,零点击怎么打穿企业邮箱
安全·web安全·网络安全·outlook·邮件安全
SunnyDays10111 天前
使用 Java 高效管理 Excel 批注:添加、读取、修改和删除
java·开发语言·excel
福兮说1 天前
AI 把工号整理成 Excel 后,前面的 0 还在吗?我会先核对这三列
excel
工具派2 天前
JSON转Excel后18位订单号不对了?数字精度与类型边界实测
json·excel
Allstar_433 天前
制造业研发管理数字化:从 Excel 到专业 APQP 系统的架构选型思考
架构·excel