我正在尝试使用VBA在工作表中输入一个公式(供以后在Excel中使用)。直到今天早上一切都很顺利。
For u = 1 To Row2
Sheets("Testa").Cells(u + 1, 14).FormulaArray = "=SUM(IF(B2:B2000=" & CStr(u) & ",F2:H2000,0))"
Next
For v = 1 To Row
Sheets("Testa").Cells(v + 1, 18).FormulaArray = "=SUM(IF(A2:A2000=" & CStr(v) & ",F2:H2000,0))"
Next第一个循环在单元格中给出了这样的结果:“=SUM(如果(RC-12:R1998C-12=1,RC-8:R1998C-6,0)”,将绝对引用改为相对引用,而不是将函数转换为法语等效。第二个循环工作得很好。列A和B包含如下所示的数字列表(从1到Row或Row2):
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3我不知道我错过了什么。欢迎任何帮助!
发布于 2018-03-27 13:19:52
我编写公式的范围被设置为文本范围,解释了为什么它不计算公式。手动将其更改为标准范围解决了这个问题。
https://stackoverflow.com/questions/49513117
复制相似问题