You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将Access中带vbNewLine的字符串传入Outlook邮件时如何保留换行?

根本原因

HTMLBody属性按照HTML规则渲染内容,vbNewLine对应的纯文本换行符在HTML中会被识别为普通空白,不会触发换行,HTML换行需要使用<br>标签实现。

修复方案

在替换占位符之前,先把字符串里的vbNewLine全部替换为<br>即可,修改后的代码如下:

Dim strSalesOrderRemarks As String
' 你的原字符串赋值逻辑,注意修正笔误:第二行原代码的strExample应为strSalesOrderRemarks
strSalesOrderRemarks = "Hello" & vbNewLine 
strSalesOrderRemarks = strSalesOrderRemarks & "World"

' 新增换行符转HTML标签的逻辑
Dim formattedBody As String
formattedBody = Replace(strSalesOrderRemarks, vbNewLine, "<br>")

' 替换模板占位符
.HTMLBody = Replace(.HTMLBody, "{strBody}", formattedBody)

拓展场景

如果需要保留原字符串中的所有空格、缩进格式,可以将处理后的字符串包裹在<pre>标签中:

formattedBody = "<pre>" & Replace(strSalesOrderRemarks, vbNewLine, "<br>") & "</pre>"

内容的提问来源于stack exchange,提问作者Mathias Z

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 18:15:00