打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VBA 中发送邮件(二. 使用 JMail 组件)

VBA 中发送邮件(二. 使用 JMail 组件)

 

  在上一篇 VBA 中发送邮件(使用 Outlook)中,VBA 通过 Outlook 来发邮件不仅频繁的弹出提示窗口要求确定,而且需要在 Outlook 中配置好,不能随意使用邮件服务器。对此,是否有相当于 JavaMail 那样的第三方组件呢?Google 帮忙,果然找到一个,名曰 w3 JMail,J 为首,其实与 Java 无任何关系。

  可以在网络上搜索 w3 JMail Personal V4.3,或者直接到官网 http://www.dimac.net 去下载,w3 Jmail 的授权方式是免费的。默认位置安装好 JMail 之后,是在 C:\Program Files\Dimac\w3JMail4 可以看到 Examples 目录、jmail.dll、w3jmail4.pdf 和 readme.txt 文件。可以查阅w3jmail4.pdf 中的使用帮助。我们所要的文件其实只是那个 jmail.dll,安装程序会自动帮你注册 jmail.dll。若未运行安装程序,只是拷贝了 jmail.dll,则要运行 regsvr32 jmail.dll 注册它即可。

  可以看看那个 Examples 目录,发现可支持 ASP、Assembly、Delphi、Visual C++、xml,自然像 JS、VBS、VB、VBA 那样的语言中也能使用。它不仅可以用来发送邮件,也能通过 POP 协议接收邮件。下面看一段接收邮件的代码:

01.'使用 JMail 组件来发送邮件
02.Function JmailSend(Subject, HtmlBody, MailTo)
03.    Dim JmailMsg As New jmail.Message
04.    With JmailMsg
05.        .Encoding = "GBK"
06.        .MailServerUserName = "Unmi" 'smtp 验证用户名
07.        .MailServerPassWord = "xxxxxx" 'smtp 验证密码
08.        .AddRecipient MailTo '收件人
09.        .AddRecipientCC "fantasia@sina.com" '抄送
10.        .AddRecipientBCC "broodwar@2911.net" '暗送
11.        .From = "unmi@2911.net"
12.        .FromName = "隔叶黄莺"
13.        .Charset = "GBK"
14.        .ContentType = "text/html"
15.        '.Priority = 1  '重要级别
16.        .Logging = True '为 True,可用 JmailMsg.Log 获得与服务器交互的详细日志信息
17.        .Silent = True '为 True,出错时会有 JmailMsg.ErrorMessage 回送消息
18.        .Subject = Subject
19.        '.Body = HtmlBody    '作为纯文本内容发送,设置 Body 属性
20.        .HtmlBody = HtmlBody '用这个可以发送 Html 内容
21.         
22.        .AddAttachment "c:\users.ctl"  '发送附件
23.         
24.        If .Send("mail.2911.net") Then '指定邮件服务器
25.            JmailSend = "发送成功"
26.        Else
27.            JmailSend = JmailMsg.ErrorMessage
28.        End If
29.        MsgBox JmailMsg.Log
30.        .Close
31.    End With
32.    Set JmailMsg = Nothing
33.End Function

  在 Excel 的 Microsoft Visual Basic 编辑器中要引用注册的“JMail 4.0 Library”, 代码中的 AddXxx 方法可以执行多次,如增加多个收件人、多个附件等。真正实现批量全自动发送,程序中可动态的选择邮件服务器。

  用 w3 JMail 组件比起调用 Outlook 可要方便的多,Outlook 可以不用配置,发布时只需要带个 jmail.dll 动态库,用 regsvr32 jmail.dll 注册一下即可。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Jmail发信的实例,模块化随时调用
在64位系统上利用Jmail实现邮件群发 | VBA实例教程
C# 接收邮件
Jmail发邮件出现乱码
vba 通过excel控制outlook发邮件
邮件表格不显示_Excel VBA 实现自动发送邮件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服