excel 如何解决VBA -公式数组错误1004?

x33g5p2x  于 2023-03-20  发布在  其他
关注(0)|答案(1)|浏览(205)

我是vba的新用户,在运行以下代码时遇到错误1004“无法设置Range类的FormulaArray属性”:

Worksheets("Discriminatory_power").Range("G11").FormulaArray = "=INDEX(Import_data!A10:E1048576,MATCH(1,(Import_data!A10:A1048576=A11)*(Import_data!D10:D1048576=O8)*(Import_data!C10:C1048576=L7),0),MATCH(L4,Import_data!A10:F10,0))"

你能帮帮我吗?谢谢

9udxz4iz

9udxz4iz1#

A)对于数组公式,每个范围都需要绝对引用,如下所示。

Worksheets("Discriminatory_power").Range("G11").FormulaArray = "=INDEX(Import_data!$A$10:$E$1048576,MATCH(1,(Import_data!$A$10:$A$1048576=A11)*(Import_data!$D$10:$D$1048576=O8)*(Import_data!$C$10:$C$1048576=L7),0),MATCH(L4,Import_data!$A$10:$F$10,0))"

B)如果Excel文件格式为Excell 97-2003,即“XLS”,则确保将最后一行的编号从1048576更改为65536。

Worksheets("Discriminatory_power").Range("G11").FormulaArray = "=INDEX(Import_data!$A$10:$E$65536,MATCH(1,(Import_data!$A$10:$A$65536=A11)*(Import_data!$D$10:$D$65536=O8)*(Import_data!$C$10:$C$65536=L7),0),MATCH(L4,Import_data!$A$10:$F$10,0))"

相关问题