测试了下面的代码,必须本机安装的outlook,配置好qq邮箱,还需要打开outlook,vba才能调用outlook发送邮件
Sub SendMail()
Set myOlApp = CreateObject("Outlook.Application")'//后期绑定
Set objMail = myOlApp.CreateItem(olMailItem)'新建一封邮件
With objMail
.To = "xxxx@qq.com"'//收件人
.Subject = "邮件主题" '//就是邮件标题
.Body = "邮件正文内容" '//正文具体内容
.cc = "yyyy@163.com" '//邮件抄送人
.Attachments.Add "f:\派送单.xlsx" '//添加附件
.Display '//刷新显示效果的作用
.Send'//发送
End With
End Sub
我测试了,如果本机的outlook没有打开,上述代码无法使用。
请问,有无办法,可否在outlook关闭的状态下,vba调用outlook发送邮件?
系统版本可能路径不一样,前提要先启用。
CDO 库通常默认安装在 Windows 上,但在某些系统上可能需要手动启用。你可以通过以下步骤启用它:
Alt + F11
)。工具
-> 引用
。一些常见邮件服务的 SMTP 配置信息:
smtp.qq.com
25
或 465
(SSL)smtp.gmail.com
587
(TLS)或 465
(SSL)使用CDO库(Collaboration Data Objects)
我写个例子给你参考一下
Sub SendMailUsingCDO()
Dim objMessage As Object
Set objMessage = CreateObject("CDO.Message")
With objMessage
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.qq.com"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "你的QQ邮箱"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "你的QQ邮箱授权码"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
.Configuration.Fields.Update
.To = "xxxx@qq.com"
.CC = "yyyy@163.com"
.From = "你的QQ邮箱"
.Subject = "邮件主题"
.TextBody = "邮件正文内容"
.AddAttachment "C:\Users\Administrator\Desktop\派送单.xlsx"
.Send
End With
Set objMessage = Nothing
End Sub
问题内容: 我只是想知道是否可以在不将Outlook安装在服务器上且不使用COM Interop的情况下向人们发送会议请求(我不惜一切代价避免在服务器上使用)。 我们在Windows 2003域中拥有Exchange 2003,并且所有用户都是域用户。我想我可以发送’round iCal / vCal之类的东西,但是我想知道是否存在通过Exchange在不使用Outlook的情况下发送会议请求的适
我想用Java从我的公司Outlook帐户发送邮件。但它说邮箱无法访问。我试过各种解决方案,比如更改主机名,但还是不行。错误保持不变。请对此提出任何解决方案。下面是我面临的错误片段。注意:我使用javax mail来实现这个目的。
我希望我的程序能够从我的公司outlook帐户发送电子邮件。我看了很多JMA的例子,似乎不是我想要的。 在哪里可以找到通过Outlook发送邮件的简单示例? 我是否应该将邮件系统移至独立的服务-应用程序?如果是,为什么?
问题内容: 我正在使用。 使用发送电子邮件(通过)的最佳方法是什么? 问题答案: 有关使用Outlook的解决方案,请参见下面的TheoretiCAL答案。 否则,请使用python随附的smtplib。请注意,这将要求您的电子邮件帐户允许smtp,默认情况下不一定启用此功能。 编辑: 此示例使用保留域,如RFC2606中所述 为了使它真正与gmail配合使用,Doe先生需要进入gmail中的选项
当使用Azure Logic App Office 365 Outlook连接器-“发送电子邮件”时,是否有方法确定电子邮件是否已实际送达收件人,以便根据失败采取特定措施? 我在连接器中使用了无效的电子邮件ID,但发送电子邮件的操作显示为成功,即使电子邮件未送达。为了确认这是一个无效的电子邮件ID,我从Outlook向该无效电子邮件ID发送了电子邮件,并收到了一封未送达的电子邮件。 在“发送电子邮
问题内容: 我正在尝试使用JavaMail以html格式发送电子邮件,但它似乎始终只在Outlook中显示为文本电子邮件。 这是我的代码: 有什么想法为什么电子邮件的html版本不会在Outlook中显示? 问题答案: 经过大量调查,我已经取得了一些重大进展。 首先,我建议不要使用JavaMail,而应使用Jakarta Commons Email 库。这确实大大简化了问题! 现在的代码是: 讲简