我修改了现有表单并将其作为.oft文件保存在我的桌面上。 每当我发送此表格时,我都会看到一张旧签名。
如果我双击.oft文件,我会看到带有旧签名的正文,然后是我下面的新签名。我想删除卡在身体里的旧签名。令我困惑的是,当我在Outlook表单中打开该文件时,它永远不会在消息中包含签名,这就是为什么当我运行表单时我看不到这个签名,除非我发送它,我在预览时看到它打开我看到我的Outlook表单应该是这样的消息。
我设法将文件保存为html。我在页面底部看到了签名。
如何删除或修改html文件以删除该签名并取回原始文件。
我也尝试保存为html,删除签名,保存,然后使用宏来加载html。但无法挽回经常。
Sub MakeHTMLMsg()
Set objMsg =3D Application.CreateItem(olMailItem)
Set fso =3D CreateObject("Scripting.FileSystemObject")
Set ts =3D fso.OpenTextFile("c:\testfile.htm", 1)=20
strText =3D ts.ReadAll
objMsg.HTMLBody =3D strText
objMsg.Display
Set fso =3D Nothing
Set ts =3D Nothing=20
Set objMsg =3D Nothing
End Sub
答案 0 :(得分:1)
如果您或协作者意外地在邮件正文中保存了带有RTF的.oft Outlook表单(包括签名),那么这个富文本将永远停留在.oft中,据我所知(除非您决定在十六进制编辑器中修改它。正如其他人在网络的黑暗角落所建议的那样,您可以运行表单,删除邮件正文,并将其另存为.oft - 但不幸的是,这不适用于RTF。 RTF卡住了。我发现隐藏此文本的唯一方法是使用此VBScript Outlook宏将MailItem的BodyFormat类型更改为纯文本。 RTF字节将保留在.oft中,但至少没有人会看到它们。
Sub ChangeToPlainTextAndPublishForm()
Dim objOL ' As Outlook.Application
Dim objItem ' As Outlook.ContactItem
Dim objFD ' As Outlook.FormDescription
Const olPersonalRegistry = 2
Const olDiscard = 1
Set objOL = CreateObject("Outlook.Application")
Set objItem = objOL.CreateItemFromTemplate("C:\MyPath\MyForm.oft")
Set objFD = objItem.FormDescription
objItem.BodyFormat = OlBodyFormat.olFormatPlain
'Publish to personal forms library
With objFD
.DisplayName = "myForm"
.PublishForm olPersonalRegistry
End With
objItem.Close olDiscard
Set objFD = Nothing
Set objItem = Nothing
Set objOL = Nothing
End Sub
答案 1 :(得分:0)
谢谢