在Excel中,我们可以使用sumsq()来处理区域或一组区域中的平方和。我怎样才能做小熊的总和或写一个行为相同的模块? 我在sumproduct()方面取得了一些成功,但是并没有像sumSQ()那样灵活。 Excel-VBA中的任何答案
答案 0 :(得分:0)
如果数据在A1:A10中,您可以使用=SumProduct(A1:A10,A1:A10,A1:A10)
如果你想写一个udf
Function SumCu(r As Range) As Variant
Dim dat As Variant
Dim sum As Variant
Dim i As Long, j As Long
dat = r.Value2
sum = 0
For i = 1 To UBound(dat, 1)
For j = 1 To UBound(dat, 2)
sum = sum + dat(i, j) ^ 3
Next j, i
SumCu = sum
End Function
或更一般地
Function SumPwr(r As Range, Pwr As Single) As Variant
Dim dat As Variant
Dim sum As Variant
Dim i As Long, j As Long
dat = r.Value2
sum = 0
For i = 1 To UBound(dat, 1)
For j = 1 To UBound(dat, 2)
sum = sum + Val(dat(i, j)) ^ Pwr
Next j, i
SumPwr = sum
End Function