最近因为重装系统,自己从Foxmail改为使用Outlook2010,发现Office的Outlook没有像Foxmail的邮件“再次发送”功能。
因为公司每天要求我们写日报(Daily Report),以前使用Foxmail的时候,我每次都会选中昨天的日报邮件,然后点击“再次发送”,Foxmail会创建一封跟昨天日报格式一模一样的邮件,我只需要改改其中的内容,其他的收件人、抄送人、主题、签名等均不用改变。
现在使用Outlook就麻烦多了,我只能点击“全部答复”,然后得把主题里面的“答复”字样的字符串删除,然后还得修改正文里面多出来的东西。
能不能利用Outlook现有的东西,实现像Foxmail一样的“再次发送”的功能?
今天花了点时间研究了一下VBA,发现VBA这个脚本语言是我见过最难使的一门语言,原因难以一一赘述。
不过最后总算找到一种勉强可行的办法:
一、创建一个模板文件DailyReport.oft,将收件人,主题,正文框架、签名一一编辑完成;
二、编写VBA脚本
Sub CreateNewDialyReport() Dim myNameSpace As Outlook.NameSpace Dim myFolder As Outlook.Folder Dim myItem As Object Dim myAccount As Account Dim newItem As MailItem Set newItem = Application.CreateItemFromTemplate("d:\Work\Email\DailyReport.oft", Application.Session.GetDefaultFolder(olFolderDrafts)) newItem.Display (True) End Sub
三、将宏加到主窗体的“快速访问工具栏”中
这样,每次一点击这个按钮,就会创建出一封新的格式都OK的邮件了!