Excel VBA发送Email时自动允许Outlook安全对话框
在Outlook的宏安全性设置如果选择了“为所有宏提供通知”

并且,在【编程访问】中选择了“总是向我发出警告”

在其他VBA中创建邮件过程中,如果修改Recipients或者执行Send方法,都会弹出一个允许和拒绝的对话框。

本帖中包含一个工具,可以自动点击最左侧的【允许】按钮,从而保证程序的连续执行。下载地址: AllowOutlookSecurityDialog.rar
下载后解压缩,其中的exe文件不要双击,放在那儿就行。
然后打开“发邮件.xlsm”,可以看到如下VBA代码:
Sub Test()
Dim OutlookApp As outlook.Application
Set OutlookApp = GetObject(, "outlook.Application")
Dim mail As outlook.MailItem
'预先启动AllowOutlookSecurityDialog.exe,60表示总共监视60秒。
Shell "E:\AllowOutlookSecurityDialog\AllowOutlookSecurityDialog.exe " & "Button 允许 60", vbHide
For i = To
Set mail = OutlookApp.CreateItem()
With mail
.Recipients.Add "32669315@qq.com"
.Subject = Time & " - Mail" & i
.Send
End With
Next i
End Sub
需要注意的是这行代码一定要写在创建邮件之前,因为它是异步调用的,所以在阻塞之前必须启动exe文件。
Shell "E:\AllowOutlookSecurityDialog\AllowOutlookSecurityDialog.exe " & "Button 允许 60", vbHide
其中,"E:\AllowOutlookSecurityDialog\AllowOutlookSecurityDialog.exe "是那个exe文件的具体路径,根据你解压的路径进行调整,注意双引号左侧需要保证一个空格。
另外,"Button 允许 60"里面的允许可以改成Allow(如果你是英文版Outlook),最后的60表示本工具从执行起的监视时间,意思是在60秒内凡是遇到弹出对话框,就自动点击,而不论你创建了多少封邮件。
最后送一个动态图:

增强版:
下面是使用UI Automation技术实现的监视器,下载后双击打开其中的exe文件,该窗口会自动最小化到任务栏。
llowOutlookSecurityDialog_UIA.rar
然后,你可以任意创建邮件和发送邮件了。只要遇到安全对话框就自动给你处理了。而且是秒杀,速度非常快!非常实时。
效果图:

Excel VBA发送Email时自动允许Outlook安全对话框的更多相关文章
- Delphi7中使用Indy9的IdSmtp发送email时subject过长会出现乱码的解决办法
procedure TIdMessageClient.SendHeader(AMsg: TIdMessage); var LHeaders: TIdHeaderList; begin LHeaders ...
- excel第一次打开报错 向程序发送命令时出错 多种解决办法含终极解决方法
excel第一次打开报错 向程序发送命令时出错 多种解决办法含终极解决方法 office2007应该遇到“向程序发送命令时出现 问题”,设置为以管理员运行也不好用,重装office也不好用,下面介绍下 ...
- 转: "SMTP 服务器无法识别在 Mac 2011 Outlook 中发送电子邮件时错误。错误 17092"
在 Mac 2011 Outlook 中发送电子邮件时,您可能会收到下面的错误消息: 无法发送邮件.SMTP 服务器无法识别任何 Outlook 所支持的身份验证方法.请尝试更改帐户设置中的 SMTP ...
- 【VBA】EXCEL通过VBA生成SQL,自动生成创建表结构SQL
原文:https://blog.csdn.net/zutsoft/article/details/45441343 编程往往与数据库密不可分,一个项目往往有很多的表,很多时候通过excel来维护表结构 ...
- Excel VBA附合导线平差自动计算表
这是6,7年前做的一个excel vba自动计算附合导线平差的表格. 对于做测绘的朋友来说,附合导线平差是最基础的技能,目前来说,能平差的软件和工具也很多,像南方的平差易,科傻平差.清华三维平差等,但 ...
- 来吧!带你玩转 Excel VBA
来吧!带你玩转 Excel VBA 从错失良机到艰辛的DOS征程,从坎坷购机自学路到转机起程,从爱好到事业,他从一个完全不懂电脑的人到VBA高级应用者,一切全是自学…… 我是罗刚君,来自四川的一个小县 ...
- excel vba 数据分析
(Visual Basic Application) VBA(Visual Basic for Application)是Microsoft Office系列软件的内置编程语言,其语法结构与Visua ...
- 使用PHP发送email进行账号激活或者密码修改操作
使用PHPMailer编写发送邮件 PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式(qq邮箱最近做了限制,新开域名邮箱不再允许通过smtp协 ...
- VBA中四种自动运行的宏以及模块的含义
在Excel的“标准模块”中可以创建4种自动运行的宏,它们分别是Auto_Open(打开工作 簿时自动运行), Auto_Close, Auto_Activate, Auto_Deactivate. ...
随机推荐
- Es知识整理
一.Es是如何实现分布式的 1.Es本身基于lucene,高度支持分布式的核心思想就在于,在多个服务器上启动多个Es进程实例,组建了一套Es集群. 2.其次,因为shard分片的应用,非常灵活的支持数 ...
- Dynamics CRM - 解决无法使用 Ribbon Workbench 2016 定制 Sub-Grid View Button 的问题(SubGrid MainTab 消失之谜)
发现问题: 在 Dynamics CRM 开发中,会经常使用 Ribbon Workbench 工具来定制 Button 或者对已有 Button 进行自定义功能开发,比如隐藏 SubGrid 的 A ...
- mysql字符串操作
https://h.w.com/lin/h ) 效果: https://h.w.com huangwanlin ) 效果: huang huangwanlin ) 效果: wanlin huangxi ...
- 汇编,寄存器,内存,mov指令
一.代码 和 汇编 和 二进制之间的关系 二.复习一下计算机组成原理的知识 1.寄存器 计算机中有三个存储 32位cpu提供的寄存器有三种类型8位 16位 32位 64位的只是32位的扩展 并且程序大 ...
- JAVAEE 和项目开发(第五课:服务器软件的介绍)
Web服务器根据对javaEE支持的能力分为两大类 1,JavaEE服务器(应用服务器) 1) IBM公司 WebSphere 2) BEA公司 WebLogic 3) JBoss 公司 JBoss ...
- UVA 11235 RMQ算法
上次的湘潭赛的C题,用线段树敲了下还是WA,不知道为何,我已经注意了处理相同数据,然后他们当时用的RMQ. 所以学了下RMQ,感觉算法思想是一样的,RMQ用了DP或者是递推,由单个数到2^k往上推,虽 ...
- sql server ------创建本地数据库 SQL Server 排序规则
sql server完整复制数据库 sql server导入导出方法 SQL Server 排序规则
- django数据库读写分离
django数据库读写分离 1. 配置数据库 settings.py文件中 用SQLite: DATABASES = { 'default': { 'ENGINE': 'django.db.backe ...
- 使用axis调用webservice接口
以前使用webservice服务都很简单,就是根据提供的wsdl接口地址,通过eclipse或者idea自动生成webservice client包,然后直接调用就可以了.这次业务提供的wsdl是需要 ...
- 干货 | 基于Go SDK操作京东云对象存储OSS的入门指南
前言 本文介绍如何使用Go语言对京东云对象存储OSS进行基本的操作,帮助客户快速通过Go SDK接入京东云对象存储,提高应用开发的效率. 在实际操作之前,我们先看一下京东云OSS的API接口支持范围和 ...