如何将.htm文件的内容添加到字符串中?

时间:2014-02-25 10:08:09

标签: excel vba excel-vba outlook outlook-vba

我想将默认签名添加到从Excel中的Userform发送的电子邮件的末尾。但是,由于正文是HTML(因为我无法改变),因此它不会显示签名。

我有以下代码,它是default.htm签名的位置:

strSig = Environ("AppData") & "\Microsoft\Signatures\Default.htm"

我现在需要做的事情(并且遇到问题)是将此default.htm文件的内容添加到电子邮件正文的末尾。但是,做

.HTMLBody =  "some text <br>" & strSig

它只是将文本形式的位置路径添加到电子邮件中。

如何让它插入HTML文件的内容?

2 个答案:

答案 0 :(得分:1)

您需要先从路径中读取文件内容。

Dim ff As Integer, sigTxt as String

ff = FreeFile
Open strSig For Input As #ff
    sigTxt = Input$(LOF(1), 1)
Close

.HTMLBody = sigTxt

答案 1 :(得分:1)

这是一种方法

Dim FSO As Object : Set FSO = CreateObject("Scripting.FileSystemObject")

Dim strSig As String
Dim pthSig As String

pthSig = Environ("AppData") & "\Microsoft\Signatures\Default.htm"
strSig = FSO.OpenTextFile(pthSig).ReadAll ' signature content

.HTMLBody =  "some text <br>" & strSig