'load the check variables into arrays

Dim a As Integer

For a = 1 To 47
ICheck7(a) = a
Next a

gives me subscript out of range.
when I debug..a = 48
how can that happen when I explicitly tell
it from 1 to 47
?????????????????????????