需要excel macro-vba的帮助
有一套SUMIF
公式,我需要经常调整,我需要调整的唯一事情是它的第三部分。 每次运行macros时,第三部分或总和范围列需要向右移动1列。
例如,我的公式可以是: =SUMIF($A$1:$A$10,$A15,!$C$1:$C$10)
- 我希望能够运行一个macros来调整上述公式,而不是从
Column C1:C10
添加,它会添加Column D1:10
。 - 然后下一次我运行这个macros时,这个公式将会重新变成E列,等等。
然后将这个公式拖到下面的所有必要的行,唯一改变的是第二部分的行#。
有一个简单的方法来完成这个?
提前致谢!
这里是我从录制一个macros来改变第三部分的VB代码,但是到现在为止,只有当我运行它时,它才会改变它到那个特定的列。
ActiveCell.FormulaR1C1 = "=SUMIF('WorksheetA'!R5C1:R159C1,RC1,'WorksheetA'!RC13:R159C13)"
此代码存储在公共variablesLngCNt
运行的LngCNt
。 请注意,每次打开文件时,计数将被设置为0
LngCnt
variables用于增加公式即
第一次运行= SUMIF($ A $ 1:$ A $ 10,$ A15,$ C $ 1:$ C $ 10)
第二次运行= SUMIF($ A $ 1:$ A $ 10,$ A15,$ D $ 1:$ D $ 10)
第三次运行= SUMIF($ A $ 1:$ A $ 10,$ A15,$ E $ 1:$ E $ 10)
Public LngCnt As Long Sub Macro2() ActiveCell.FormulaR1C1 = "=SUMIF(R1C1:R10C1,R[4]C1,R1C" & 3 + LngCnt & ":R10C" & 3 + LngCnt & ")" LngCnt = LngCnt + 1 End Sub