我们中有很多人不止一次在使用Outlook撰写电子邮件的时候会在邮件中写道:“我已经把你需要的文件添加到附件中了。”然后就直接点击“发送”,随后才意识到我们其实并没有向邮件中添加任何文件。天啊!
我们中有很多人不止一次在使用Outlook撰写电子邮件的时候会在邮件中写道:“我已经把你需要的文件添加到附件中了。”然后就直接点击“发送”,随后才意识到我们其实并没有向邮件中添加任何文件。天啊!
K.C. Lemson已经开发出了一个快速的应用程序可视化Basic语言(Visual Basic for Applications,VBA)脚本,这个脚本能够帮助我们避免上述的情况发生。
当邮件被发送的时候,这个脚本会检查邮件的内容,并搜索“附件”这个单词(既可以是完全匹配也可以是部分匹配)。如果没有在邮件中发现附件,那么就会出现一个弹出的对话框,并提示你没有向该邮件中添加附件。
我对原始脚本进行了微小了修改,以便使其在某些情况下对“附件”一词的搜索不是那么敏感,比如你使用“附件”一词做为一句话的开头的时候(例如,“附件中就是你需要的文件……”)
请注意,当你要创建这个脚本的时候,你首先需要在Outlook中启用宏(macros),由于安全方面的原因这个项目的默认值是被禁用的。
- 1. 在Outlook中,进入“工具”菜单,选择“宏”,然后选择“安全及选择的媒介”。随后你将会遇到是否在启动Outlook时运行宏的提示。
- 2. 进入“工具”菜单,选择“宏”,然后选择“Visual Basic编辑器”。
- 3. 在左侧的面板中双击“This Outlook Session”。
- 4. 把下面的代码粘贴到代码窗口中。
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim lngres As Long
If InStr(1, UCase(Item.Body), "附件") <> 0 Then
If Item.Attachments.Count = 0 Then
lngres = MsgBox("邮件内容中包含'附件', 但是没有发现附件 – 仍然发送?", _
vbYesNo + vbDefaultButton2 + vbQuestion, "你要求我向你提示...")
If lngres = vbNo Then Cancel = True
End If
End If
End Sub
- 5. 按F5键,检查这些代码,并确认它们被正确的编译。
- 6. 关闭代码编辑器,重新启动Outlook。在启动的时候Outlook会询问你是否需要运行宏;选择“启用宏”。
- 7. 发送一封内容中包含“附件”一词而实际上没有真正附件的测试邮件,以便确定这个脚本是否有效。