【发布时间】:2016-07-06 23:56:56
【问题描述】:
我有一个带有格式化文本的单元格,其中包含我想用换行符替换的某个子字符串。子字符串是带有方括号的 [enterkey]。这是这个问题Replace HTML tag(</br>) with Alt+Enter in Excel 的一个变体,但我想在换行后继续格式化。
我使用的代码是一个简单的替换,其中 rng2 是输入和输出单元格:
rng2.Value = Replace(rng2.Value, "[enterkey]", Chr(10))
我的问题
在插入换行符时,如何防止该代码复制上述行的格式?我希望它保持原样并简单地插入一个换行符,如图所示。
更多信息
我实际上是在转换为 HTML 并返回。我不想添加不必要的细节,但如果人们真的想知道,那是因为我将值存储在 Access 数据库中,并且我想保留单元格格式。从 Access 检索信息时,我想再次获得正确的格式。这个问题只涉及转换回来。详情见下图。
【问题讨论】:
-
在进行替换后可能需要在单元格上运行类似this one 的例程。可能需要使用
Instr获取Chr(10)的位置才能知道哪些字符要加粗。 -
我认为预处理字符串以使 [enterkey] 与文本后的格式相同可能比后处理更有效,因为这样会丢失所需的格式。可能类似于在 [enterkey] 之后复制第一个字符的格式并使其相同。这样替换后,格式不会改变。我该怎么办?
-
是否总是bold第一行和italic第二行?
-
否;可能有 1 行,也可能有 10 行。会有粗体、斜体、字体、字体颜色。任何你能想到的放入 Excel 单元格的格式,真的。它实际上是一个 HTML 字符串,我将
替换为 [enterkey],然后将 HTML 更改为富文本格式。我不得不更改
因为更改格式时会导致单元格更改,而不是行更改。它工作正常,并产生类似于输入单元格的结果(但通常更长) -
好的。与您发布的示例相比,这是一组完全不同的问题......让我从我正在构建的想法中测试更多