【发布时间】:2019-10-23 08:19:13
【问题描述】:
我记录了一个索引匹配数组公式(多个条件列),当我播放它时,它失败了......
“运行时错误 1004:无法设置 Range 类的 FormulaArray 属性”
使用 excel vba,我可以编写引用同一工作簿中的表或工作表的索引匹配数组公式,但是当我尝试引用保存在单独文件中的大型数据库表时,我收到 1004 中提到的错误标题。
'我可以执行此索引匹配数组公式,它引用同一工作簿中的工作表
Selection.FormulaArray = "=Index('GL - Chart of Accts Listing'!R6C1:R5000C1,Match(RC3&""*Salary*"",'GL - Chart of Accts Listing'!R6C1:R5000C1&'GL - Chart of Accts Listing'!R6C2:R5000C2,0))"
'最终结果是:
'{=INDEX('GL - Chart of Accts Listing'!$A$6:$A$5000,MATCH($C12&"*Salary*",'GL - Chart of Accts Listing'!$A$6:$A$5000&'GL - Chart of Accts Listing'!$B$6:$B$5000,0))}
'然而,这个公式给了我运行时 1004 错误,即使它正是我记录它的方式。
Selection.FormulaArray = "=INDEX('[All AP Transactions by Account Number - CMS Table GLSBAP.xlsm]Data File'!R1C5:R47948C5,MATCH(RC4&RC14,'[All AP Transactions by Account Number - CMS Table GLSBAP.xlsm]Data File'!R1C2:R47948C2&'[All AP Transactions by Account Number - CMS Table GLSBAP.xlsm]Data File'!R1C10:R47948C10,0))"
非常感谢任何帮助。谢谢,SR
【问题讨论】:
标签: arrays excel vba indexing match