第1个回答 2020-07-14
Function logsum(rng As Range)
Dim arr
Dim brr
Dim i As Long
Dim su
If rng.Count > 0 Then
logsum = Application.Sum(rng)
ReDim arr(1 To rng.Count)
ReDim brr(1 To rng.Count)
For i = 1 To rng.Count
arr(i) = rng(i).Value / logsum
brr(i) = Log(arr(i)) / Log(2) * arr(i)
su = su + brr(i)
Next
logsum = Abs(su)
End If
End Function
'自定义函数放入模块中
'引用示例:=logsum(J3:J7)