【发布时间】:2016-06-25 07:22:03
【问题描述】:
我有一段代码将数组公式放在一个范围内。它在扔
运行时错误:438“对象不支持此属性或方法”
但是当我在单元格中粘贴相同的公式并点击Ctrl+Shift+Enter
一切正常。
strFormula = "=IF(SUM(--(A2=Data!$A$2:$A$1423)*--(B2=YEAR(Data!$B$2:$B$1423))* --(C2=MONTH(Data!$B$2:$B$1423)) * (Data!$E$2:$E$1423))=0,TEXT(,),SUM(--(A2=Data!$A$2:$A$1423)*--(B2=YEAR(Data!$B$2:$B$1423))* --(C2=MONTH(Data!$B$2:$B$1423)) * (Data!$E$2:$E$1423)))"
shtAbsoluteData.Range("D2").ArrayFormula = strFormula
插入IF 条件时会出现问题。所以没有IF,下面的代码可以正常工作:
strFormula = "=SUM(--(A2=Data!$A$2:$A$1423)*--(B2=YEAR(Data!$B$2:$B$1423))* --(C2=MONTH(Data!$B$2:$B$1423)) * (Data!$E$2:$E$1423))"
shtAbsoluteData.Range("D2").ArrayFormula = strFormula
注意:如果我使用shtAbsoluteData.Range("D2").Formula,则没有错误但结果不正确
【问题讨论】:
标签: arrays excel vba range formula