excel中的对数平均预设函数 - 使用范围作为输入值

时间:2014-05-30 14:06:17

标签: excel excel-vba excel-formula logarithm acoustics vba

我需要将自己的函数添加到对数平均值以获得优秀,但我不确定如何将一系列值作为输入值或如何计算给定范围内的值的数量。 我对编程有一点经验。

我通常在excel中使用的公式,我希望实现为预设功能如下:

= 10 * LOG(SUM(10 ^('值范围' / 10)/'范围内的值数量')

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试此操作,您可能需要调整以考虑空白单元格或

范围内的非文本
Function TestUDF(rngValues As Range) As Double

    Dim lSumofValues As Long
    Dim lCountofValues As Long
    Dim rngLoop As Range

    lSumofValues = 0
    lCountofValues = rngValues.Count 'Get count of values in items in range

'Add up the values in the range
    For Each rngLoop In rngValues
        lSumofValues = lSumofValues + rngLoop.Value
    Next
'Perform Calculation
    TestUDF = 10 * Log((10 ^ (lSumofValues / 10) / lCountofValues))

End Function

然后只需在单元格中输入= TestUDF(A1:A18)即可使用它。