我有一个表格(比如说)数据,其中包含文本框A,B,C。
我希望根据表单数据撰写电子邮件。在我的电子邮件正文中,我想要以下格式:
A是:(表单中文本框中A的实际值)(换行符) B是:((表格中文本框中B的实际值)(换行符) C是:((表格中文本框中C的实际值)。
我知道我可以通过Forms!Data!A_value访问值(假设我将该框命名为A_value)。我无法将它们组合成一个字符串并添加换行符。
我尝试了以下内容:
Dim body as String
body = "A is : & Forms!Data!A_value &" & "B is : & Forms!Data!B_value &" & "C is : & Forms!Data!C_value &"
因为我读过&在某个地方找到一条新线。
然而,当我这样做时,整个事物被串联在代码中,并且没有从表单字段获得值。 请建议选项: 提前致谢
答案 0 :(得分:1)
您可能需要以下内容:
Dim body as String
body = "A is : " & Forms!Data!A_value & vbNewLine & _
"B is : " & Forms!Data!B_value & vbNewLine & _
"C is : " & Forms!Data!C_value
注意:我使用行连续字符在3行上编写代码的事实与在输出中插入新行字符无关。它也可以写成
body = "A is : " & Forms!Data!A_value & vbNewLine & "B is : " & Forms!Data!B_value & vbNewLine & "C is : " & Forms!Data!C_value
但我发现更难阅读。
答案 1 :(得分:1)
&符号用于连接文本"hello " & "there"
。
如果您引用&符号,则无效,只需复制&符号"bits & bobs"
。
您可以使用字符vbCrLf(回车符/换行符)添加(连接)换行符"time for " & vbCrLf & "a break"
。
答案 2 :(得分:1)
您可以使用的另一个技巧是创建一个带有占位符的单个字符串模板,然后使用Replace语句填充它们,如:
body = "A is: {A} & B is: {B} & C is: {C}"
body = Replace(body, "{A}", Forms!Data!A_value)
body = Replace(body, "{B}", Forms!Data!B_value)
body = Replace(body, "{C}", Forms!Data!C_value)
分成多行,例如:
body = "A is: {A}{CR}B is: {B}{CR}C is: {C}{CR}"
body = Replace(body, "{A}", Forms!Data!A_value)
body = Replace(body, "{B}", Forms!Data!B_value)
body = Replace(body, "{C}", Forms!Data!C_value)
body = Replace(body, "{CR}", vbCrLf)