我正在寻找一个函数,它将采用总周值,计算右侧的单元格数量等于总周数值,并提供这些单元格的总和。Excel函数将所选单元格中的值求和
例如单元格A2的值为3.我想要一个函数,它将向右计算出3个单元格(B2,C2,D2),并将这3个单元格的值求和到单元格E2中。
我正在寻找一个函数,它将采用总周值,计算右侧的单元格数量等于总周数值,并提供这些单元格的总和。Excel函数将所选单元格中的值求和
例如单元格A2的值为3.我想要一个函数,它将向右计算出3个单元格(B2,C2,D2),并将这3个单元格的值求和到单元格E2中。
在单元格E2中,使用公式=SUM(OFFSET($B$2,0,0,1,A2))
。
试试这个解决方案。它将看起来在Selection
中的值并循环。对于每个值,它将循环遍历范围中的下一个单元格,并向该行发送消息总和。最后它会传达所有单元格的总和。
要定制,更新消息被弹出的代码。
使用
Option Explicit
可以防止由于未声明的 变量导致的运行时错误。
Option Explicit
Sub SumOfWeeks()
Dim cell As Object
Dim count As Integer
Dim addr As String
Dim rowSum As Integer
Dim i As Integer
Dim totalSum As Integer
For Each cell In Selection
count = cell.Value
rowSum = 0
If IsNumeric(count) Then
For i = 1 To count
rowSum = rowSum + cell.Offset(0, i).Value
Next i
totalSum = totalSum + rowSum
MsgBox "Sum of Row is: " & rowSum
End If
Next cell
MsgBox "Total Sum is: " & totalSum
End Sub
另一种选择是创建范围的字符串,找到范围的SUM
。将此代码视为一个开始的点,而不是复制粘贴解决方案。