首页 > 解决方案 > Excel宏用变量替换标签

问题描述

我正在使用以下代码替换导出的 qml 文件中的一些文本和标签。

sTemp = Replace(sTemp, "<CONTENT>", "</CONTENT>")

但现在我想用如下变量替换标签:

sTemp = Replace(sTemp, "<CONTENT ID="0">", "<CONTENT ID="0"><![CDATA[")

我很感激任何帮助。谢谢

标签: excelvba

解决方案


Replace需要两个字符串部分。
它们的限制双引号必须保持如下所示:

sTemp = Replace(sTemp, "...", "...")

如果你用你的字符串交换每个 ... ,将它们的双引号加倍,
但保持上述限制不变。

例子:

Doublequote somewhere in the middle: <CONTENT ID="0">
                                     <CONTENT ID="0"><![CDATA[
sTemp = Replace(sTemp, "<CONTENT ID=""0"">", "<CONTENT ID=""0""><![CDATA[")

Doublequote at the end: ID="0"
                        "ID=1"
sTemp = Replace(sTemp, "ID=""0""", """ID=1""") 

Double-Doublequote: =IF(A1="you got it","yeah :)","")
Range.Formula = "=IF(A1=""you got it"",""yeah :)"","""")"

推荐阅读