使用Excel VBA当我尝试选项1和选项2时,我收到语法错误消息。
如何正确设置范围,以便我可以在选项1中使用我的公式?
对于选项2,为什么我不能像普通的excel公式那样引用范围?
这是因为我想将此公式应用于此单元格下方的多行。我是否使用for循环?
默认代码是正确的。
'Default
Range("I2").Formula = "=+SUMIFS(R2C2:R434C2,R2C1:R434C1,RC[-1],R2C3:R434C3,""G"")"
'Option 1
Dim MyRange As Range
Set MyRange = Range("B2:B434")
Range("I2").Formula = _
"=+SUMIFS(" & MyRange & ",R2C1:R434C1,RC[-1],R2C3:R434C3,""G"")"
'Option 2
Range("I2").Formula = _
"=+SUMIFS($B$2:$b$434,R2C1:R434C1,RC[-1],R2C3:R434C3,""G"")"
答案 0 :(得分:4)
'Default
Range("I2").Formula = "=+SUMIFS(R2C2:R434C2,R2C1:R434C1,RC[-1],R2C3:R434C3,""G"")"
'Option 1
Dim MyRange As Range
Set MyRange = Range("B2:B434")
Range("I2").FormulaR1C1= _
"=+SUMIFS(" & MyRange.Address(False,False,xlR1C1) & ",R2C1:R434C1,RC[-1],R2C3:R434C3,""G"")"
'Option 2
Range("I2").FormulaR1C1 = _
"=+SUMIFS(R2C2:R434C2,R2C1:R434C1,RC[-1],R2C3:R434C3,""G"")"