ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 9079|回复: 13

[求助] excel vba调用outlook将当前excel文件作为附件发送邮件

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-9-5 21:41 | 显示全部楼层 |阅读模式
如题。我想在这张表里加一个按钮,点击按钮就能调用outlook将当前的这个excel文件作为附件发送一封邮件。邮件的收件人是一个邮箱,抄送是另一个邮箱,主题是“XXX表格”,正文是“XXX表格已完成,请查收。”请教这个该怎么做,高手帮帮忙,我总是配不对outlook。 XXX表格.rar (1.45 KB, 下载次数: 34) 求高手帮忙!!

TA的精华主题

TA的得分主题

发表于 2012-9-5 23:04 | 显示全部楼层
  1. Sub outlook发送()
  2.     '工具-引用勾选Microsoft outlook
  3.     '要预先对outlook进行配置
  4.     Dim myOlApp As New Outlook.Application
  5.     With myOlApp.CreateItem(olMailItem)
  6.         .Attachments.Add ThisWorkbook.FullName '附件
  7.         .To = "******@**" '邮箱地址
  8.         .Subject = "XXX表格" '主题
  9.         .Body = "XXX表格已完成,请查收。" '正文
  10.         .cc = "*******@****" '抄送
  11.         .send '发送
  12.     End With
  13.     Set myOlApp = Nothing
  14. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2013-11-1 22:58 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
wcymiss 发表于 2012-9-5 23:04

亲 你好
我直接复制粘贴了你的编码 然后F5 但是木有成功唉
弹出窗口
user defined type not defined...
是不是有什么地方要改的?不是直接复制就能用?
谢拉

TA的精华主题

TA的得分主题

发表于 2013-11-2 11:58 | 显示全部楼层
    Dim OutApp As Object
    Dim OutMail As Object
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
        On Error Resume Next
        With OutMail
            .To = "******@**" '邮箱地址
        .Subject = "XXX表格" '主题
        .Body = "XXX表格已完成,请查收。" '正文
        .cc = "*******@****" '抄送
            .Attachments.Add ThisWorkbook.FullName '附件
                .Display
                .Save
        End With
    Application.Wait (Now + TimeValue("0:00:02"))
    Application.SendKeys "%s"
    Application.Wait (Now + TimeValue("0:00:02"))
    SendKeys "%{s}", True 'send the email without prompts
        On Error GoTo 0
    Set OutMail = Nothing
    Set OutApp = Nothing

TA的精华主题

TA的得分主题

发表于 2017-12-4 16:22 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
KCFONG 发表于 2013-11-2 11:58
Dim OutApp As Object
    Dim OutMail As Object
    Set OutApp = CreateObject("Outlook.Applicat ...

666,很6啊

TA的精华主题

TA的得分主题

发表于 2018-8-17 15:55 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

如果是将附件的地址写在工作表中,该如何写代码呢?

TA的精华主题

TA的得分主题

发表于 2018-8-17 20:33 | 显示全部楼层
-z- 发表于 2018-8-17 15:55
如果是将附件的地址写在工作表中,该如何写代码呢?

attach_address = ThisWorkbook.Sheets("sheet1").Range("a1") '指定附件路径
.Attachments.Add attach_address '指定要添加附件,可以多次重复,添加多个附件

TA的精华主题

TA的得分主题

发表于 2018-8-20 14:48 | 显示全部楼层
weisilisid 发表于 2018-8-17 20:33
attach_address = ThisWorkbook.Sheets("sheet1").Range("a1") '指定附件路径
.Attachments.Add attach_ ...
  1.         With objMail

  2.             '设置收件人地址(从通讯录表的'E-mail地址'字段中获得)

  3.             .To = Cells(rowCount, 1)
  4.             
  5. '           加抄送
  6.             
  7.             .cc = Cells(rowCount, 2)
  8.             

  9.             '设置邮件主题

  10.             .Subject = Cells(rowCount, 3)

  11.             '设置邮件内容(从通讯录表的'内容'字段中获得)

  12.             .Body = Cells(rowCount, 4)
  13.             
  14.             
  15.             

  16.             '设置附件(从通讯录表的'附件'字段中获得)

  17.             .Attachments.Add Cells(rowCount, 5)

  18.             '自动发送邮件

  19.             .send

  20.         End With
复制代码

我是用这个循环在工作表中获取信息(邮件地址、主题等)创建邮件的,发邮件没问题,但就是附件无法加上上去,不知道是什么问题。

TA的精华主题

TA的得分主题

发表于 2018-8-20 14:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
weisilisid 发表于 2018-8-17 20:33
attach_address = ThisWorkbook.Sheets("sheet1").Range("a1") '指定附件路径
.Attachments.Add attach_ ...

            .Attachments.Add Cells(rowCount, 5)
我用这个代码获取写在工作表第五列的附件地址,但邮件就是带不上附件,怎么回事呢?

TA的精华主题

TA的得分主题

发表于 2018-8-21 07:31 | 显示全部楼层
有可能是你的表格附件路径描述不清楚吧?最好能上附件看看
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-12 16:18 , Processed in 0.040622 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表