获取运行VBA脚本的Outlook 2007时出现问题
我正试图让Outlook在每日电子邮件中将附件保存到一个文件夹中,在这个文件夹中,我可以让一个文件系统观察者随时解析和分析附件(它是数据完整性检查器的报告)。我已经建立了一个应该运行VBA脚本的规则,但它并没有按照我所能说的运行。我已经在VB6中验证了代码实际上会将一些文本保存到文件中,因此如果Outlook实际运行VBA脚本,它应该能够执行相同的操作。但事实并非如此!谁能看出我到底做错了什么获取运行VBA脚本的Outlook 2007时出现问题,vba,outlook,outlook-2007,Vba,Outlook,Outlook 2007,我正试图让Outlook在每日电子邮件中将附件保存到一个文件夹中,在这个文件夹中,我可以让一个文件系统观察者随时解析和分析附件(它是数据完整性检查器的报告)。我已经建立了一个应该运行VBA脚本的规则,但它并没有按照我所能说的运行。我已经在VB6中验证了代码实际上会将一些文本保存到文件中,因此如果Outlook实际运行VBA脚本,它应该能够执行相同的操作。但事实并非如此!谁能看出我到底做错了什么 Dim WithEvents objInbox As Outlook.Items Private S
Dim WithEvents objInbox As Outlook.Items
Private Sub Application_Startup()
Set objInbox = Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Sub SnagAttachment(theItem As MailItem)
On Error Resume Next
Dim fnum As Integer
fnum = FreeFile()
Open "c:\temp\success.txt" For Output As #fnum
Print #fnum, "Ran SnagAttachment Successfully"
Close #fnum
End Sub
请注意,当我使用规则向导并选择“运行脚本”时,子SnagAttachment将作为可选择的脚本列出。请尝试找出确切的问题:
试着找出确切的问题:
为了使脚本正常工作,您需要更改Outlook中的安全设置。转到工具>宏>安全,并将其更改为“所有宏的警告”。然后重新启动Outlook
希望这有帮助为了让脚本正常工作,您需要更改Outlook中的安全设置。转到工具>宏>安全,并将其更改为“所有宏的警告”。然后重新启动Outlook
希望这对您有所帮助当您将
放在程序顶部的“错误恢复下一步”
上时,您如何知道它是否工作?你永远不会发现
以下是创建脚本的规则,脚本应作为规则的一部分运行:
另请注意以下注意事项:
对于高流量,“运行脚本”规则不是一个好的选择
应用程序,因为Outlook可能会跳过应用规则(如果太多)
许多物品到达时都符合规定的条件
当您将
放在程序顶部的“错误恢复下一步”
上时,您如何知道它是否工作?你永远不会发现
以下是创建脚本的规则,脚本应作为规则的一部分运行:
另请注意以下注意事项:
对于高流量,“运行脚本”规则不是一个好的选择
应用程序,因为Outlook可能会跳过应用规则(如果太多)
许多物品到达时都符合规定的条件
我也遇到了同样的问题,在我看来,如果代码中有错误,脚本甚至不会启动。这与标准VBA不同,在标准VBA中,调试器会针对运行时错误弹出。例如,我的函数末尾有一个标签,它后面缺少冒号。这导致脚本根本不运行(与运行到此行然后失败相反)。我建议注释掉所有代码,从msgbox“hello world”开始。我会在您调试代码时将其保留在代码中,以了解代码正在运行,但您可能需要多次关闭消息框。反复添加代码行,直到发现问题所在。我也遇到了同样的问题,在我看来,如果代码中有错误,脚本甚至不会启动。这与标准VBA不同,在标准VBA中,调试器会针对运行时错误弹出。例如,我的函数末尾有一个标签,它后面缺少冒号。这导致脚本根本不运行(与运行到此行然后失败相反)。我建议注释掉所有代码,从msgbox“hello world”开始。我会在您调试代码时将其保留在代码中,以了解代码正在运行,但您可能需要多次关闭消息框。反复添加代码行,直到发现问题所在。哇,真不敢相信还没有人帮过你。如果这仍然是一个问题,你有没有得到任何进一步的代码以上?如果你正在运行一个脚本(假设)当一封有附件的新邮件到达时,我不清楚你为什么要使用Application_Startup事件。谢谢你的来电!显然,没有任何帮助,而且我相信上面的代码是从MSDN中提取的,所以它有官方的印记。。。分类