Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
由VBA代码创建的草稿电子邮件返回无法送达的错误_Vba_Email_Outlook - Fatal编程技术网

由VBA代码创建的草稿电子邮件返回无法送达的错误

由VBA代码创建的草稿电子邮件返回无法送达的错误,vba,email,outlook,Vba,Email,Outlook,我使用Excel(2014)中的以下VBA代码创建电子邮件草稿: 如果我打开保存的电子邮件并手动发送,我会收到系统管理员发出的无法发送的错误消息: “您的邮件未到达部分或所有预期收件人。” 如果我使用: .Send 而不是 .Save 电子邮件已发送(没有无法发送的错误)。我从excel中按原样运行代码,它运行良好 打开outlook时,我找到了草稿,标记为“邮件尚未发送” 电子邮件保存在我的Outlook的草稿文件夹中,我可以在Outlook中查看它 我打开了草稿电子邮件,按“发送”按钮发

我使用Excel(2014)中的以下VBA代码创建电子邮件草稿:

如果我打开保存的电子邮件并手动发送,我会收到系统管理员发出的无法发送的错误消息:

“您的邮件未到达部分或所有预期收件人。”

如果我使用:

.Send
而不是

.Save

电子邮件已发送(没有无法发送的错误)。

我从excel中按原样运行代码,它运行良好

打开outlook时,我找到了草稿,标记为“邮件尚未发送”

电子邮件保存在我的Outlook的草稿文件夹中,我可以在Outlook中查看它

我打开了草稿电子邮件,按“发送”按钮发送,发送成功。 我猜不出这个问题,因为我没有找到:)。
查看outlook中电子邮件的设置,您可能会发现一些问题。

我从excel中按原样运行代码,它运行良好

打开outlook时,我找到了草稿,标记为“邮件尚未发送”

电子邮件保存在我的Outlook的草稿文件夹中,我可以在Outlook中查看它

我打开了草稿电子邮件,按“发送”按钮发送,发送成功。 我猜不出这个问题,因为我没有找到:)。
在outlook中查看电子邮件的设置,您可能会发现一些东西。

希望这会有所帮助。通过添加对
OutMail.Recipients.ResolveAll()
的调用,我可以自己解决这个问题

VB.NET

Call OutMail.Recipients.ResolveAll
这为我解决了这个问题。但是,如果您的Outlook版本不支持防病毒检测,您可能会收到一个消息框,提示您外部应用正在尝试访问电子邮件地址或类似的内容:

一个程序正在尝试访问电子邮件地址信息


如果你明白了这一点,谷歌上面的短语可以找到许多关于如何解决的文章。这与Outlook中的信任设置有关。

希望这会有所帮助。通过添加对
OutMail.Recipients.ResolveAll()
的调用,我可以自己解决这个问题

VB.NET

Call OutMail.Recipients.ResolveAll
这为我解决了这个问题。但是,如果您的Outlook版本不支持防病毒检测,您可能会收到一个消息框,提示您外部应用正在尝试访问电子邮件地址或类似的内容:

一个程序正在尝试访问电子邮件地址信息


如果你明白了这一点,谷歌上面的短语可以找到许多关于如何解决的文章。这与Outlook中的信任设置有关。

谢谢你,哈桑。不确定要调整哪个设置。作为更新,我再次尝试,在发送草稿电子邮件时,单击“发送”按钮导致Outlook崩溃:(…尝试对office进行诊断,包括outlook。开始菜单->Microsoft office工具->Microsoft office诊断。谢谢你,Hassan。不确定要调整哪个设置。作为更新,我再次尝试,在发送草稿电子邮件时,单击“发送”按钮导致outlook崩溃:(…尝试对office进行诊断,包括outlook。开始菜单->Microsoft office工具->Microsoft office诊断。这是一个很好的解决方案,解决了我遇到的问题。我确实收到outlook的提示“…某个程序正试图发送电子邮件…”或类似的“允许”、“拒绝”“按钮。但是有一个允许一定时间的选项。我选择了10分钟,之后10分钟内不会有更多提示。太好了。谢谢你,帕特。这是一个很好的解决方案,解决了我遇到的问题。我确实收到Outlook的提示,“…一个程序正在尝试发送电子邮件…”或类似于“允许”、“拒绝”的提示“按钮。但是有一个选项允许一定的时间。我选择10分钟,之后10分钟内不会有更多提示。太好了。谢谢你,帕特。”。