【问题标题】:How can I code a color change of pasted text如何编码粘贴文本的颜色变化
【发布时间】:2020-01-23 11:26:51
【问题描述】:

我有几行文本,我在其中将数据(包括姓名)插入单元格,然后将 Excel 工作簿通过电子邮件发送给人员列表。我已经对电子邮件进行了编码,以便在电子邮件正文中显示某些信息,以便用户在打开文件之前可以看到该数据。目前一些文本,如标题等,被格式化以做某些事情。 (在下面的示例中,“TEXT”粘贴为粗体并带有下划线。)我也想将颜色更改为红色,但添加 <span style="color: #ff0000;"> 不起作用:它给出了“编译错误:预期语句结束”错误。关于如何正确编码颜色变化的任何想法?

"<p><b><u>TEXT:</u></b>" & " " & Range("A6")

另外,当 VBA 将其放入电子邮件时,我正在尝试更改电子邮件正文中复制单元格的格式。 (例如,如果 Range("A6") 中的文本是“Smith”,我希望“Smith”显示为粗体但不带下划线。)

这是我正在尝试编写的代码,但无法正常工作:

"<p><span style="color: #ff0000;"><strong><u>Sergeant:</u></strong></span></p>" & " " & "<b>Range("A6")</b>"

这位新手将非常感谢任何帮助!

【问题讨论】:

    标签: html excel vba text format


    【解决方案1】:

    加倍引用,不要在引用中包含您的Range 引用。

    另外,请确保您使用的是.HTMLBody 而不是.Body

    应该是这样的:

    "<p><span style=""color: #ff0000;""><strong><u>Sergeant:</u></strong></span></p><b>" & Range("A6") & "</b>"
    

    从技术上讲,你甚至不需要这样简单的风格的引号:

    "<p><span style=color:#ff0000><strong><u>Sergeant:</u></strong></span></p><b>" & Range("A6") & "</b>"
    

    由于&lt;span&gt; 只是一个空的内联容器标签,您可以在本例中使用&lt;p&gt; 作为您的容器:

    "<p style=color:#ff0000><strong><u>Sergeant:</u></strong></p><b>" & Range("A6") & "</b>"
    

    你甚至可以使用所有样式来代替那些旧的 HTML 标签:

    "<div style=color:#ff0000; font-weight:bold; text-decoration:underline;>Sergeant:</div><b>" & Range("A6") & "</b>"
    

    他们都应该做同样的事情。

    【讨论】:

    • 非常感谢!这让我到达了我需要的地方!
    猜你喜欢
    • 1970-01-01
    • 2014-05-04
    • 1970-01-01
    • 2020-05-15
    • 2022-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多