我正在准备一个自动执行某些功能的电子表格。
我有以下几行:
A,B,C,D,E,F,AF,G,日期,格式化日期
我的目的是当我向单元格A到F输入值时,总和会自动显示在AF中,而G则是小计。例如,最初如果A到F的值各为1,那么AF是AF的总和并且将显示6,G将是6本身,因为初始值将为0,所以0 + 6 = 6,但是我想要如果我将AF的值更改为2,则G应取前一个值(例如6)并将其加到AF的当前值(AF的总和= 12)并将G的单元格值更改为18 < / p>
我正在尝试为此功能创建动态宏。除了用现值和AF的当前值之和替换G之外,我已经获得了其他所有东西。
非常感谢任何帮助。
这是我当前的宏VBA代码
Sub FetchDate()
'
' FetchDate Macro
'
' Keyboard Shortcut: Ctrl+q
'
ActiveCell.FormulaR1C1 = "=TODAY()"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "=TEXT(RC[-1],""mmmm d, yyyy"")"
End Sub
Sub Sum()
'
' Sum Macro
'
' Keyboard Shortcut: Ctrl+w
'
ActiveCell.FormulaR1C1 = "=SUM(RC[-6]:RC[-1])"
ActiveCell.Offset(0, 1).Range("A1").Select
End Sub
答案 0 :(得分:0)
Rohith,据我所知,你的问题是如何提供运行总和。基本上,您希望将第一个总和值添加到下一个总和值。希望此代码可以帮助您解决您的问题。在这里,您只需要将第一个和值存储到单元格中,或者可以存储在变量中。
Sub SumData()
Range("H1") = Range("G1").Value
If Range("H1") = "" Then
Range("G1") = "=Sum(A1:F1)"
Range("H1") = Range("G1").Value
Range("G1") = Range("G1").Value
ElseIf Range("H1") <> "" Then
Range("G1") = "=Sum(A1:F1)"
Gvalue = Range("G1").Value
Hvalue = Range("H1").Value
sumvalue = Gvalue + Hvalue
Range("G1") = sumvalue
End If
End Sub
答案 1 :(得分:0)
谢谢大家的支持。
使用上面提到的概念,我使用以下代码使其工作:
{{1}}