有一套SUMIF
我需要经常调整的公式&我唯一需要调整的是它的第三部分。每次运行宏时,第三部分或总和范围列需要向右移动 1 列。
例如,我的公式可以是:=SUMIF($A$1:$A$10,$A15,!$C$1:$C$10)
- 我希望能够运行一个宏来调整上述内容
公式,而不是添加
Column C1:C10
,它会添加Column D1:10
.
- 然后,下次运行宏时,公式将再次更改为 E 列,依此类推。
然后,该公式将被拖动到下面所有必需的行,唯一改变的是第二部分的行#。
有没有一种简单的方法可以实现这一点?
提前致谢!
这是我通过录制更改第三部分的宏而获得的 VB 代码,但到目前为止,每当我运行它时,它只会将其更改为该特定列。
ActiveCell.FormulaR1C1 = "=SUMIF('WorksheetA'!R5C1:R159C1,RC1,'WorksheetA'!RC13:R159C13)"
此代码将其运行次数存储在公共变量中LngCNt
。请注意,每次打开文件时计数都会设置为 0
The LngCnt
变量用于增加公式,即
第一次运行 =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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)