我正在寻找一个函数,它将获取总周值,计算右侧等于总周值的单元格数量,并提供这些单元格的总和。
例如,单元格 A2 的值为 3。我想要一个函数来计算右侧的 3 个单元格(B2、C2、D2)并将这 3 个单元格的值相加到单元格 E2 中。
我正在寻找一个函数,它将获取总周值,计算右侧等于总周值的单元格数量,并提供这些单元格的总和。
例如,单元格 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
范围中的一个。将此代码视为起点,而不是复制粘贴解决方案。