excel - 连接包含 "和 & 字符的字符串

标签 excel vba concatenation

问题

我正在通过 VBA 使用一些 Excel 切片器,并且需要同时过滤(不同数量的)项目。

然而,切片器命令包括“”和“&”字符,这显然是有问题的。

我尝试单独处理 """和 "&"字符,例如 "Some text" & """ & str1 & "&" & "more text" ,以及尝试将它们捆绑在一起,例如 "Some text"" & str1 & "&more text"
这两种方法似乎都不起作用,会产生“编译错误:预期:语句结束”。

问题

有没有更好的方法在串联中包含“&”和“””字符?

更多内容

这是我试图结束的实际字符串布局,在所有连接完成之后:

"[Jobs].[ParentJob].&[Code1]", "[Jobs].[ParentJob].&[Code2]", "[Jobs].[ParentJob].&[Code3]"

Jobs 和 ParentJob 保持不变的地方(它们是切片器类别,应该是字符串的一部分);但是 Code1、Code2 等......是在循环运行时被一一连接的变量。

我有信心运行循环并在正确的位置连接正确的部分,我只是无法在任何地方找到任何资源来解释如何在更复杂的格式中包含 "和 & 在连接中。

最佳答案

对于单个 "我通常使用 """" (4 双引号)。

这很烦人,但效果很好。因此,对于您的测试,如果我这样做:
Debug.Print """" & "[Jobs].[ParentJob].&[Code1]" & """" & ", " & """" & _ "[Jobs].[ParentJob].&[Code2]" & """" & ", " & """" & "[Jobs].[ParentJob].&[Code3]" & """"
在中间窗口中,我得到输出文本:
"[Jobs].[ParentJob].&[Code1]", "[Jobs].[ParentJob].&[Code2]", "[Jobs].[ParentJob].&[Code3]"
希望这可以帮助

更新 : 对于字符 &只要在双引号之间就没有问题。将其作为任何其他字 rune 本处理。这样做"&"将返回 &"[Jobs].[ParentJob].&[Code1]" , 将返回 [Jobs].[ParentJob].&[Code1]
更新 2:使代码更具可读性的另一个选项是分配 """"到一个字符串变量。像这样的东西:

Dim DblQuote As String

DblQuote = """"

Debug.Print DblQuote & "[Jobs].[ParentJob].&[Code1]" & DblQuote & ", " & DblQuote & _
"[Jobs].[ParentJob].&[Code2]" & DblQuote & ", " & DblQuote & "[Jobs].[ParentJob].&[Code3]" & DblQuote

这将输出您需要的文本,但使用它更容易并使代码可读。

关于excel - 连接包含 "和 & 字符的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57570006/

相关文章:

java - 有办法获取 XSSFSheet 哈希密码吗?

html - 使用 VBA 进行网页抓取 - 更改输入框的值

excel - 如何在使用 iframe 的网页上使用 selenium 和 vba 查找表格?

vba - 如何使用MACROS(VBA)获取Excel中最后一个非空单元格的地址

c# - 在 .NET Framework 中使用 MathNet.Numerics.LinearAlgebra 进行矩阵串联

c# - 添加自动筛选和排序会导致 Excel 崩溃

excel - 调用程序失败,但从单独的按钮运行时有效

java - 当从数据库检索的值不同时如何更改 Excel 单元格?

python - 在一帧中的 block_wise 索引下连接两个不同长度的数据帧

sql - Sybase:如何连接 sybase 列中的行