excel 结构化表上VBA中的Range()在列名带有引号时停止工作

n3schb8v  于 2023-08-08  发布在  其他
关注(0)|答案(2)|浏览(73)

在VBA中,我有这个简单的子过程:

Sub Test()
  Dim LookInColsSingleEntryArr(0) As Range
  Set LookInColsSingleEntryArr(0) = Range("UsersTbl[Father Countries]")
End Sub

字符串
我将结构化表中标题为“父国”的列下的数据分配给一个变量。这个很好用。
但是如果我把栏目的名字改成父亲的国家。下面的命令不起作用。

Set LookInColsSingleEntryArr(0) = Range("UsersTbl[Father's Countries]")


我得到:
对象全局的方法范围失败
我想我需要转义单引号。我试过:

Set LookInColsSingleEntryArr(0) = Range("UsersTbl[Father" & Chr(39) & "s Countries]")


但我得到:
对象全局的方法范围失败
我是否错误地使用了Chr()?

9avjhtql

9avjhtql1#

这样使用它:

Set LookInColsSingleEntryArr(0) = Range("UsersTbl[Father''s Countries]")

字符串
请注意双引号''
在结构化引用列引用中,您需要使用''来表示单引号,即使在工作表上也是如此。参考工作表并观察。

相关问题