根据我的理解,我的代码当前正在以HTML格式将文本填充到电子邮件正文中。我试图用一个变量替换文本,所以在每次运行之前都不必编辑文本。当前在开头有一个名为Name的变量,该变量在电子邮件正文中填充了“ Hello Jim”,但我希望实际的正文从下一行开始,因此我不能只添加&另一个变量。该代码当前为:
StrTo:=Email, _
StrCC:="", _
StrBCC:=SDLEmail, _
StrSubject:=Email_Subject, _
Signature:=True, _
Send:=False, _
StrBody:="Hello " & Name & "," & _
*"<body> Here is the weekly update. Quotes are current through yesterday. " & _
"<br><br>" & " </body>"*
,我要添加的变量是Email_Body
答案 0 :(得分:2)
由于您没有显示完整的代码,我无法确定您的电子邮件通话是否正常。您的StrBody包含不必要的HTML <body>
标记。如果称呼出现在电子邮件的正文中,则它也被视为正文的一部分。
假设您要使用两个变量Name
和Email_Body
。在致电之前定义那些。
Name = "Jim"
Email_Body = "Here is the weekly update. Quotes are current through yesterday."
如果您想轻松更改值,它们也可以放在一张纸上的单元格中。如果您有一个名为“ Control”的工作表,其中包含这些值,则可以按以下方式检索它们:
Name = ThisWorkbook.Sheets("Control").Range("A2").Value
Email_Body = ThisWorkbook.Sheets("Control").Range("B2").Value
在电子邮件命令中创建StrBody部分时,它应如下所示:
StrBody:="Hello " & Name & ",<br><br>" & Email_Body
<br>
标签是换行符,因此您的文本将显示如下:
Hello Jim,
Here is the weekly update. Quotes are current through yesterday.
答案 1 :(得分:1)
您可以使用<br>
StrBody:="<body>Hello " & Name & ",<br>" & _
"Here is the weekly update. Quotes are current through yesterday. " & _
"<br><br> </body>"*