vba-通过excel发送outlook邮件?

问题描述

通过excel发送outlook邮件?

如何利用excel的vba将工资单填入数据后通过outlook发送出去将A表中的数据填入B表后将B表通过outlook发送出去

解决方案

Excel通过VBA调用CDO发邮件

前期我写了很多关于用VBA调用Jmail群发邮件的工具,其实不仅仅Jmail可以做到,其实Windows自带的cdosys.dll就可以直接调用发邮件。
两者相比而言,Jmail相对比较好控制,但是需要安装Jmail.dll,CDO是系统自带的,可以直接调用。因而我自己也做了一个用CDO发邮件的东东。代码如下:
[code=vb] '代码由轩辕轼轲编写,如对Excel发邮件这个偏门主题感兴趣,可加入QQ群141616426,入群请输入验证代码:Excel发邮件
Sub CDOSENDEMAIL()
Dim CDOMail As Variant
On Error Resume Next '出错后继续执行
Application.DisplayAlerts = False '禁用系统提示
ThisWorkbook.ChangeFileAccess Mode:=xlReadOnly '将工作簿设置为只读模式
Set CDOMail = CreateObject("CDO.Message") '创建对象
CDOMail.From = "10000@qq.com" '设置发信人的邮箱
CDOMail.To = "10000@qq.com" '设置收信人的邮箱
CDOMail.Subject = "主题:用CDO发送邮件试验" '设定邮件的主题
'CDOMail.TextBody = "文本内容" '使用文本格式发送邮件
CDOMail.HtmlBody = "当您看到此封邮件,表明CDO设置正确" '使用Html格式发送邮件
CDOMail.AddAttachment ThisWorkbook.FullName '发送本工作簿为附件
STUl = "http://schemas.microsoft.com/cdo/configuration/" '微软服务器网址
With CDOMail.Configuration.Fields
.Item(STUl & "smtpserver") = "smtp.qq.com" 'SMTP服务器地址
.Item(STUl & "smtpserverport") = 25 'SMTP服务器端口
.Item(STUl & "sendusing") = 2 '发送端口
.Item(STUl & "smtpauthenticate") = 1 '远程服务器需要验证
.Item(STUl & "sendusername") = "10000" '发送方邮箱名称
.Item(STUl & "sendpassword") = "password" '发送方邮箱密码
.Item(STUl & "smtpconnectiontimeout") = 60 '连接超时(秒)
.Update
End With
CDOMail.Send '执行发送
Set CDOMail = Nothing '发送成功后即时释放对象
If Err.Number = 0 Then
MsgBox "成功发送邮件", , "温馨提示" '如果没有出错,则提示发送成功
Else
MsgBox Err.Description, vbInformation, "邮件发送失败" '如果出错,则提示错误类型和错误代码
End If
ThisWorkbook.ChangeFileAccess Mode:=xlReadWrite '将工作簿设置为读写模式
Application.DisplayAlerts = True '恢复系统提示
End Sub[/code]
这段代码的作用就是将当前工作簿发往指定的信箱,这个在我们做Excel调查问卷的时候很有用处,可以将工程里面封装上这么一段代码,问卷做完之后,点击一个提交按钮直接发送到指定的信箱即可。如对Excel发邮件这个偏门主题感兴趣,可加入QQ群141616426,入群请输入验证代码:Excel发邮件

时间: 2024-08-01 20:12:26

vba-通过excel发送outlook邮件?的相关文章

C#使用系统方法发送异步邮件完整实例_C#教程

本文实例讲述了C#使用系统方法发送异步邮件.分享给大家供大家参考,具体如下: 项目背景: 最近在对几年前的一个项目进行重构,发现发送邮件功能需要一定的时间来处理,而由于发送是同步的因此导致在发送邮件时无法执行后续的操作 实际上发送邮件后只需要将发送结果写入系统日志即可对其他业务没有任何影响,因此决定将发送邮件操作更改为异步的 由于使用的是C#的邮件类库,而C#本身已经提供了异步发送的功能即只需要将Send方法更改为SendAsync即可,更改方法名并不难但发送后再写入日志就有点难了 因为项目中发

Outlook 邮件图片无法正常显示解决办法

故障现象: Outlook 邮件正文里的图片或是签名档里的图片不能显示 (任何形式的:包括新建邮件发送,转发,回复,或是其它人发来的),都显示为红色的"X",但这些图片会以附件的形式显示.怎么办? 解决方案: 我们需要检查一下图片存放的路径是否有效. 下面我们介绍两种方法:自动修复和手动修复. 1.自动修复   请单击知识库附件中FixIt小工具的解决此问题链接. 注意:如果您使用的计算机并未出现此问题,则可将自动修复功能保存至闪存驱动器或 CD 中,然后就可在出现此问题的计算机中运行

用文本编辑器也可以嵌入图片发送多媒体邮件

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 我们使用的好多邮件客户端,并不全部都是像Outlook.Foxmail.the Bat等支持 插入图片等操作的,特别是邮件群发的一些邮件客户端软件,如爱博邮件群发系统,他们的侧 重点不在多媒体文件编辑上,如果想在这些纯 文本编辑器 中插入图片.声音等多媒体信息,特别是要将图片嵌入到Email中,就要注意一下技巧了.这种方式不同于邮件附件,因此

Linux系统下使用mail发送Internet邮件的配置方法

  用惯了windows系统的用户可能一开始对linux系统掌握不好,很多功能可能用起来不是很习惯.本文就介绍了linux系统的一个小应用:在Linux系统下使用mail发送Internet邮件.不过在介绍mail之前先来看一下先来看一下sendmail服务. Red Hat上sendmail服务一般是自动启动的.可以通过下面的命令查看sendmail服务的状态: service sendmail status 如果sendmail服务未启动可以使用如下命令启动: service sendmai

用PHP发送MIME邮件(三)

mime MIME 类 在有了这些基础之后,让我们用PHP创建和实现一个MIME邮件类.在我们的PHP库函数中,已经有了编码 所必须的工具. MIME类必须能够: 增加附件 对每一个独立的请求,对所附的数据进行编码 创建MIME段/头 生成一个包含MIME段/头的完整的邮件 将整个邮件作为字符串返回 用本地的邮件处理程序进行发送(或选择调用一个SMTP邮件处理程序) 这个类叫做MIME_mail.我们将讨论类的方法,在理论与实际的差距中建立起桥梁.(阅读建议:Luis Argerich的PHP的

使用Spring邮件抽象层发送简单邮件

Spring提供了一个发送电子邮件的高级抽象层,它向用户屏蔽了底层邮件系统的一些细节,同时负责低层次的代表客户端的资源处理.Spring邮件抽象层的主要包为org.springframework.mail.它包括了发送电子邮件的主要接口MailSender和 封装了简单邮件的属性如from, to,cc, subject, text的值对象叫做SimpleMailMessage. 1.我们定义一个发送邮件的接口:OrderManager.java 1 public interface Order

在PHP中发送MIME邮件

综述:编写邮件系统或邮件列表程序是PHP应用的一个大的分支,既管PHP提供了简单的用于发email的函数,但在实际应用中,会涉及到发送带附件的邮件.测试用户输入的email地址的有效性,尤有必要用专门的章节来讲述. MIME是什么? MIME表示多用途Internet邮件扩允协议.MIME扩允了基本的面向文本的Internet邮件系统,以便可以在消息中包含二进制附件. RFC822在消息体的内容中做了一点限制:就是只能使用简单的ASCII文本.所以,MIME信息由正常的Internet文本邮件组

使用CDONTS发送HTML邮件

在WIN2000环境下我们可以利用系统自带的邮件服务器发送HTML邮件. 需要注意的是:发送HTMLmail之前一定要对发送的主内容进行UBB转换,本例中就是使用DvBCode(Request("vcontent")),对来自文本域vcontent的内容进行UBB格式化后再发送 至于UBB代码请参考本站: 关键代码已经给出注释,你可以将具体内容修改你的情况.

Exchange Server 2010行为管理(二)需审批才可发送外部邮件

1.现在我们继续创建一条传输规则,发送给外面的邮件需要进行审批核实才能发送出去 2.勾选"from a member of distribution list " 3.按"distribution list",选定"Internet_Group@albert.iego.cn"通讯组,继续勾选"send to a member of distribution list"选定"Test01_Group@albert.ie