Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 在VBA中添加命名范围引用_Excel_Vba_Named Ranges - Fatal编程技术网

Excel 在VBA中添加命名范围引用

Excel 在VBA中添加命名范围引用,excel,vba,named-ranges,Excel,Vba,Named Ranges,我正在尝试向命名范围的referesto值添加字符串。问题是字符串必须带有“=”才能与其他内部工具一起使用。我可以很容易地创建字符串,但是当我尝试添加引用时,会附加错误。是否有任何方法覆盖该错误,并在字符串开头放置“=”的字符串。下面是一个非常简化的模型示例: Public Sub AddReference() ActiveWorkbook.Names.Add Name:="DG_PRINT_SETTINGS_001", RefersTo:="={""""001"""",""""pr

我正在尝试向命名范围的referesto值添加字符串。问题是字符串必须带有“=”才能与其他内部工具一起使用。我可以很容易地创建字符串,但是当我尝试添加引用时,会附加错误。是否有任何方法覆盖该错误,并在字符串开头放置“=”的字符串。下面是一个非常简化的模型示例:

Public Sub AddReference() 

    ActiveWorkbook.Names.Add Name:="DG_PRINT_SETTINGS_001", RefersTo:="={""""001"""",""""print_settings""""}"

End Sub
任何有助于使这项工作将是伟大的,因为我不能改变这个过程的另一端,我需要鞋钉这项工作。我知道这是可能的,因为它是在别处完成的,但是写代码的人已经不在了,我不能问他……我有点像索尔


您需要注意字符串引号

这将有助于:

 ActiveWorkbook.Names.Add Name:="DG_PRINT_SETTINGS_002", RefersTo:="={""001"",""print_settings""}"

我们看不到您提到的错误。我更正的语法有错误,并验证了此sub在运行时会显示错误。我使用的是Excel 2013,64位,如果有一点点不同,您仍然没有在问题中指出错误。您说它是“附件”。“你不能给
referesto
参数分配一个
范围
对象引用吗?@Mat'sMug不,这是一个字符串,被另一个我无权访问的程序拆开了。因此,有人提出了鞋角评论。或者你的意思是,把它变成一个范围对象,而不是一个字符串?64 0r 32位没有任何区别,为什么有这么多引号。你想要
“001”
“00”
吗?我得到的错误和输出不是我想要的,而是更少的引号什么错误?是否共享错误消息?你试过我的答案了吗?是的,我得到了RTE 91:对象变量或块变量set@Darw1n34除非
ActiveWorkbook
Nothing
,否则该错误不可能从该行代码中引发。很可能是其他原因导致了这个错误。