outlook中使用vbs生成签名后,打开邮件也会显示标签,怎么调整为只在新建邮件的时候,显示标签

nk9841 2012-03-20 05:43:01
outlook中使用vbs生成签名后,打开已有邮件会只显示签名和新建邮件一样,怎么调整为只在新建邮件的时候,显示签名。

问题主要是outlook的签名没有日期控件等,所以想用vbs实现新建邮件时,自动插入日期,问候语,结束语等功能,代码如下:



Dim myOlApp As New Outlook.Application

'Private WithEvents myOlInspectors As Outlook.Inspectors

Private myMailItem As Outlook.MailItem

Function Signature() As String

Dim mDate As Date

mDate = Format(Now, "yyyy-MM-dd hh:mm:ss")

Signature = "<font class=MsoNormal align=left style='text-align:left'><span lang=EN-US style='font-family:""""微软雅黑"""",""""sans-serif""""'><o:p>"

Signature = Signature & "<p>,您好!</p>"

Signature = Signature & "<p> </p>"

Signature = Signature & "<p>Best Regard</p><p></p>"

Signature = Signature & "<p>" & mDate & "</p>"

Signature = Signature & "</o:p></span></font>"


End Function

Private Sub Application_Startup()
'GetSignature
Set myOlInspectors = myOlApp.Inspectors
End Sub

Private Sub myOlInspectors_NewInspector(ByVal Inspector As Inspector)

Set myMailItem = Inspector.CurrentItem

With myMailItem

.HTMLBody = Signature()

' .Display '如果是outlook 2007 将此行注释掉

End With

End Sub



现在测试发现如下问题:

1. 打开所有邮件,都显示新建邮件的页面
2. 如何在程序中调用以后的签名
3. 回复和转发功能,怎么使用同类功能,需要把原邮件内容跟在此签名后变。
...全文
288 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
nk9841 2012-03-26
  • 打赏
  • 举报
回复
感谢回复,原来是新建的时候,判断是否发件人为空,明白啦。谢谢。


我后来放弃了这个方式,直接定义了一个按钮,让按钮代替了新建邮件这个功能。用起来也很方便~
dsd999 2012-03-21
  • 打赏
  • 举报
回复
Private Sub myOlInspectors_NewInspector(ByVal Inspector As Inspector)

Set myMailItem = Inspector.CurrentItem

If (myMailItem.To = "") Then

With myMailItem
.HTMLBody = Signature()
' .display
End With
End If

End Sub
dsd999 2012-03-21
  • 打赏
  • 举报
回复
Private Sub myOlInspectors_NewInspector(ByVal Inspector As Inspector)

Set myMailItem = Inspector.CurrentItem

If (myMailItem.To = "") Then

With myMailItem
.HTMLBody = Signature()
' .display End With
End If

End Sub

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧