• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Beakerboy / VBA-Projects / 26302927727

22 May 2026 05:40PM UTC coverage: 19.277%. Remained the same
26302927727

push

manual

web-flow
Merge c37ed2cd7 into c3b85fff6

3 of 3 new or added lines in 1 file covered. (100.0%)

7 existing lines in 1 file now uncovered.

48 of 249 relevant lines covered (19.28%)

0.37 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

82.22
/src/Modules/Outliers.bas
1
Attribute VB_Name = "Outliers"
1✔
2
'Given a column of data, calculate the Grubbs Score
3
'G = Max|Xi-Xbar| / sigma
4
Public Function GrubbsScore(Data)
1✔
5
    Average = WorksheetFunction.Average(Data)
1✔
6
    StDev = WorksheetFunction.StDev(Data)
1✔
7
    Number = WorksheetFunction.Count(Data)
1✔
8
    Max = 0
1✔
9
    Dim i As Integer
1✔
10
    For i = 1 To Number - 1
9✔
11
        Value = Data(i)
9✔
12
        Absvalue = Abs(Value - Average)
9✔
13
        If Value <> "" And Absvalue > Max Then
9✔
14
            Max = Absvalue
2✔
UNCOV
15
        End If
×
16
    Next i
×
17
    GrubbsScore = Max / StDev
1✔
18
End Function
1✔
UNCOV
19

×
20
Public Function CriticalGrubbs(N, alpha, Optional tails = 1)
1✔
21
    T = WorksheetFunction.T_Inv(alpha / tails / N, N - 2)
1✔
22
    CriticalGrubbs = (N - 1) / N ^ 0.5 * (T ^ 2 / (N - 2 + T ^ 2)) ^ 0.5
1✔
23
End Function
1✔
UNCOV
24

×
25
Public Function DixonQScore(Data)
1✔
26
    Dim num As Integer
1✔
27
    Dim fRange As Double
1✔
28
    Dim fGap As Double
1✔
29
    num = WorksheetFunction.Count(Data)
1✔
30
    fGap = WorksheetFunction.Max(WorksheetFunction.Max(Data) - WorksheetFunction.Small(Data, num - 1), WorksheetFunction.Small(Data, 2) - WorksheetFunction.Min(Data))
1✔
31
    fRange = WorksheetFunction.Max(Data) - WorksheetFunction.Min(Data)
1✔
32
    DixonQScore = fGap / fRange
1✔
33
End Function
1✔
UNCOV
34

×
35
Public Function CriticalDixonQ(N As Integer, alpha)
2✔
36
    Dim num As Integer
2✔
37
    num = 10
2✔
38
    Dim Q95 As Variant
2✔
39
    Dim Q99 As Variant
2✔
40
    Q95 = Array(1, 1, 1, 0.97, 0.829, 0.71, 0.625, 0.568, 0.526, 0.493, 0.466)
2✔
41
    Q99 = Array(1, 1, 1, 0.994, 0.926, 0.821, 0.74, 0.68, 0.634, 0.598, 0.568)
2✔
42
    If alpha = 0.95 Then
2✔
43
        CriticalDixonQ = Q95(WorksheetFunction.Min(N, num))
1✔
UNCOV
44
    ElseIf alpha = 0.99 Then
×
UNCOV
45
        CriticalDixonQ = Q99(WorksheetFunction.Min(N, num))
×
UNCOV
46
    End If
×
47
End Function
2✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc