首页 > 解决方案 > 如何使用 vba 代码中 excel 表的结构化引用连接多个单元格

问题描述

我正在尝试连接多个列并用“-”分隔每个列。当我运行下面的代码时,它会给我一个类型不匹配的错误。如何使类型对齐或至少允许单元格连接?

每当我删除连字符(-)时,连接都会起作用,但一旦我把它或任何其他值而不是列,它就会失败。请帮忙,我似乎无法清除此错误。我可以帮助我将它与 (-) 连接起来吗?我试过删除范围。我试过 range.Value 而不是 range.formula 但它仍然不起作用

Range("Table2[New_app]").Formula = "=iferror(vlookup(Input2!$Q2,AppRef,3,false),0)" 'This is a previous line of code that works 

'This is the code that is not working 
Range("Table2[[MIS-MONTH]]").Formula = "=CONCATENATE(Table2[New_Name], " - ", Table2[Month])"

结果应该是这样的:

Column1content-Column2content-Column3content

但是我不断收到运行时错误“13”类型不匹配

标签: excelvba

解决方案


根据我所做的快速测试,添加额外的引号似乎允许它工作。

Range("A12").Formula = "=CONCATENATE(A2,"" - "",B2)"

更新了您的代码以匹配

Range("Table2[[MIS-MONTH]]").Formula = "=CONCATENATE(Table2[New_Name], "" - "", Table2[Month])"

推荐阅读