我使用的公式,这将使用索引和匹配,并且输出计算的值被来自其他小区B2 value.I减去需要保持在所有细胞B2
共同减法部件Excel VBA中建议
我使用以下公式单元格C2
=IFERROR(B2-(INDEX(raw!$A:$D,MATCH(1,(raw!$A:$A=data!$A2)*(raw!$C:$C=data!C$1),0),4)),"")
但如果我拖到这个公式下一个单元格,D2
的公式得到改变
=IFERROR(C2-(INDEX(raw!$A:$D,MATCH(1,(raw!$A:$A=data!$A2)*(raw!$C:$C=data!D$1),0),4)),"")
C2
正在取代B2
我想保持B2
恒定
下面是VBA宏创建:
Sub Macro7()
'
' Macro7 Macro
'
Selection.FormulaArray = _
"=IFERROR(RC[-1]-(INDEX(raw!C1:C4,MATCH(1,(raw!C1=data!RC1)*(raw!C3=data!R1C),0),4)),"""")"
Selection.AutoFill Destination:=ActiveCell.Range("A1:D1"), Type:= _
xlFillDefault
ActiveCell.Range("A1:D1").Select
End Sub
如果我手动编辑公式在e这是工作正常(改变,C2,D2,E3,F2
等B2
)。但是我在100s的单元格中使用这个公式,手动编辑所有这些几乎不可能。无论如何,我可以改变VBA以保持B2在细胞范围内保持恒定以运行此公式?
你为什么不使用'= IFERROR($ B $ 2 -...' – 2014-12-04 14:43:13