计算标准误差Vba

时间:2015-08-26 15:48:46

标签: excel vba excel-vba excel-2010 standard-error

我试图使用VBA将标准错误函数添加到excel中,到目前为止我只是标准偏差函数的变体。我在网上得到了这个功能,并在最后一行改变了它,它除以总数据点的平方根。这对我来说似乎不起作用。

编辑:当我尝试在Excel电子表格中使用该功能时,无论数据集是什么,它都会显示为0.

Function StdErr(numbers As Range) As Double
    Dim i As Integer
    Dim xbar As Double
    Dim x As Double
    xbar = WorksheetFunction.Average(numbers)
    For i = 1 To numbers.Count
        x = x + (numbers.Item(i).Value - xbar) ^ 2
    Next i
    SrdErr = (x / numbers.Count) / (Sqr(numbers.Count))
End Function

3 个答案:

答案 0 :(得分:3)

您的代码遇到问题:(1)最后一个语句拼错了函数名SrdErr而不是StdErr。这就是你得到0的原因。(2)根据Microsoft documentation,函数定义本身并不正确。

试试这个:

Option Explicit

Function StdErr(numbers As Range) As Double
    Dim StdDev As Double
    Dim Size As Integer

    StdDev = WorksheetFunction.StDev_S(numbers)
    Size = WorksheetFunction.Count(numbers)

    StdErr = StdDev / Sqr(Size)
End Function

包含Option Explicit是一个好主意,这样你就可以避免像这样的愚蠢拼写错误。

答案 1 :(得分:2)

你得到零的原因是因为拼写错误。

最后的

SrdErr =应为StdErr =

答案 2 :(得分:2)

你可以直接做到:

var handleClick = function (event) {
    alert('Hello there!');
};
var button = document.querySelector('#big-button');
button.addEventListener('click', handleClick);

你所拥有的公式似乎在整体分子中都有一个不正确的分母和一个缺少的平方根,至少你是想做this formula