我正在尝试编写一个简单的 z 测试,但我的代码在使用此代码计算 Z 分数时出错:Z = (P1 - P2) / SD;
有人知道为什么?出现的错误是溢出(错误 6)
以下是完整代码:
Sub ChiSquare()
Total_Groep_1 = Application.Sum(Range("C4", Range("C4").End(xlDown)))
Total_Groep_2 = Application.Sum(Range("E4", Range("E4").End(xlDown)))
For i = 5 To Range("C4").End(xlDown)
Dim P1 As Double
P1 = Cells(i, 3) / Total_Groep_1
Cells(i, 4) = P1
Dim P2 As Double
P2 = Cells(i, 5) / Total_Groep_2
Cells(i, 6) = P2
Dim SD As Double
SD = Sqr((P1 * (1 - P1) / Total_Groep_1) + (P2 * (1 - P2) / Total_Groep_2))
Cells(i, 7) = SD
Dim Z As Double
Z = (P1 - P2) / SD
Cells(i, 8) = Z
Next i
End Sub
我做的循环不是去一个数字,而是去一个范围。它现在有效,我改变了它。