在MS Access报表中使用HTML引用含空格字体名的问题
解决MS Access报表富文本框带空格字体的设置问题
嘿,我之前也踩过这个坑!Access报表里的富文本框其实是基于简化HTML的,带空格的字体名(比如「Times New Roman」「Microsoft YaHei」)确实不能随便写,你之前试的引号没用到正确的位置——得用<span>标签配合嵌套引号才行,我给你捋清楚具体操作:
核心正确写法
要修改部分文字的字体,必须用<span>标签包裹目标内容,并且给带空格的字体名加上双引号,嵌套在style属性里。举个实际例子:
比如你要把「重点数据」改成「Microsoft YaHei」字体,正确的富文本内容是:
常规内容<span style='font-family:"Microsoft YaHei";'>重点数据</span>其他内容
这里的关键细节:
- 必须用
<span>标签,Access富文本对这个标签的style属性支持最稳定 font-family后的字体名必须用双引号括起来,而且要放在style的引号(单引号或双引号都可以,只要嵌套正确)内部- 注意不要用太复杂的HTML标签,Access的富文本支持范围有限,
<span>是最稳妥的选择
VBA动态设置的注意事项
如果你是用VBA代码动态给富文本框赋值,要注意转义双引号(VBA里用两个双引号表示一个实际的双引号),比如:
' 写法1:style用单引号,字体名用转义的双引号 Me.RichTxtBox.Value = "报表标题:<span style='font-family:""Times New Roman"";'>2024年销售汇总</span>" ' 写法2:style用双引号,字体名用单引号(这种不用转义,更简洁) Me.RichTxtBox.Value = "报表标题:<span style=""font-family:'Times New Roman';"">2024年销售汇总</span>"
额外检查点
- 确保你的Windows系统里已经安装了目标字体,不然就算写法正确也会显示默认字体
- 不要直接在富文本框的编辑界面手动选字体(有时候带空格的字体选了不生效),直接用上述HTML格式的内容设置控件来源或者通过VBA赋值
内容的提问来源于stack exchange,提问作者user9430840
相关产品推荐
相关产品推荐

