VB脚本,修改文本正文,同时保持格式化
问题描述:
我想使用VBscript打开模板(或.msg),编辑文本正文,同时保留格式并最终发送电子邮件。VB脚本,修改文本正文,同时保持格式化
电子邮件中有一段名为“插入日期”的部分,我想插入一个日期。
这里是一些代码,我目前有:
Set ol = CreateObject("Outlook.Application")
Set msg = ol.CreateItemFromTemplate([location of template file]
Set doc = msg.GetInspector.WordEditor
If Not doc Is Nothing Then
doc.application.selection.find.execute _
"insert date", , , , , , , , , DateValue(Now() - Weekday(Now(), vbMonday) - 2), wdReplaceAll
End If
不幸的是这不替换文本,而是只出现突出显示的文本,我无法做其他事情。
另一个相关的问题: 我是新来的编程,我用VBScript,因为我来自VBA,我在做一个非常类似的文件。看来,VBScript不仅是限制性的,而且我也不觉得它非常易于使用(也许是因为它不是非常强大?) 是否有另一种语言可以用来自动化这类事情并与Outlook进行交互? 也许Python,但我不确定从哪里开始使用Microsoft Office集成。 注:我相信许多编码语言将能够做到这一点,但我受限于我可以在工作中使用,所以任何不太知名的语言肯定不会被支持:(
答
我不知道vbs或替代)....
但你这个标记与Outlook,VBA,还有我喜爱做一些与此代码:
mailitem.HTMLBody = Replace(mailitem.HTMLBody, "text old", "text new" & now())
您还可以使用HTML标签,使文本加粗,大一点的东西
M斧
你好马克斯,感谢您回复:)当我使用这种方法,它的工作原理,但它创建双行间距的原因。它似乎在每行之前和之后添加空格,并删除了一些突出显示。我不知道为什么会发生这种情况,但我不知道如何防止它发生。另外,我不知道如何用宏修改这些部分。 原始文本以RTF格式组成。 – penfold1992 2014-08-28 15:00:25
你能为我上传模板吗?你是不是用“带宏”的意思 - 如前所述,我只能在vba中提供帮助,在那里我几乎是一个初学者;-) – Max 2014-08-29 07:32:47