VBA用用户窗体文本框和组合框替换Outlook HTML模板中的所有占位符

问题描述

我不是程序员,但是我喜欢创建一些小的宏来节省迭代任务的时间。现在,我正在尝试创建一个用户表单,该表单可以在HTML模板上替换少量占位符。

到目前为止我编写的代码:

Private Sub CommandButton1_Click()

    Dim OutApp As Object
    Dim OutMail As Outlook.MailItem
    
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = Application.CreateItemFromTemplate("C:\path\ciccio.oft")
  
    With OutMail
        .To = TextBox4.Text
        .CC = ""
        .BCC = ""
              
        .HTMLBody = Replace(.HTMLBody,"###PLACEHOLDER1###",TextBox1.Text)
        .HTMLBody = Replace(.HTMLBody,"###PLACEHOLDER2###",ComboBox1.Text)

        Unload UserForm2
        .Display
    End With
   
    Set OutMail = Nothing
  Set OutApp = Nothing

End Sub

这在纯文本主体上很好用,但是在HTML主体上只是拒绝替换所有.. 甚至看起来有点随机。.所以有些东西被替换了,其余的没有。

有帮助吗?

解决方法

已解决。

问题在于html主体的格式如何。我已经编辑了其他文件中的占位符单词,然后直接在模板上复制并保存。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...