Я хочу назначить случайное число между 2 значениями, если ячейка является определенным значением, используя VBA. У меня есть 40 случайно сгенерированных чисел от 1 до 12, и затем я хочу назначить каждому из этих 40 чисел случайное число между двумя значениями, но эти два значения зависят от того, является ли число 1,2,3, ... ., 12. Мой код выглядит сейчас так, но числа, которые выходят, не всегда находятся в пределах, которые я даю. Что не так?
Sub measurepoints()
Dim i As Integer
Dim j As Integer
For i = 2 To 41
Cells(i, 1).Value = "=RANDBETWEEN(1,12)"
Next i
For j = 2 To 41
If Cells(j, 1).Value = 1 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,2)"
ElseIf Cells(j, 1).Value = 2 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,2)"
ElseIf Cells(j, 1).Value = 3 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,8)"
ElseIf Cells(j, 1).Value = 4 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,8)"
ElseIf Cells(j, 1).Value = 5 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,8)"
ElseIf Cells(j, 1).Value = 6 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,8)"
ElseIf Cells(j, 1).Value = 7 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,4)"
ElseIf Cells(j, 1).Value = 8 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,2)"
ElseIf Cells(j, 1).Value = 8 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,8)"
ElseIf Cells(j, 1).Value = 10 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,10)"
ElseIf Cells(j, 1).Value = 11 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,4)"
ElseIf Cells(j, 1).Value = 12 Then
Cells(j, 2).Value = "=RANDBETWEEN(1,8)"
End If
Next j
End Sub