Excel VBA を使用して 2 つの数値を生成しようとしています。1 から 11 の間。数値が等しい場合、2 番目の数値はランダムから再生成されます。最初の値が 8 または 9 の場合、2 番目の値は 8 または 9 であってはなりません。そうである場合は、再びランダムから生成する必要があります。
これが私のコードです:
Sub Foo()
Dim thisNum As Integer
Dim thatNum As Integer
thatNum = Int((11 * Rnd) + 1)
thisNum = Int((11 * Rnd) + 1)
Do While thisNum = thatNum
thatNum = Int((11 - 1 + 1) * Rnd + 1)
break
Loop
Do While (thisNum = 8 Or 9) And (thatNum = 8 Or 9)
thatNum = Int((11 - 1 + 1) * Rnd + 1)
break
Loop
Range("F1").Value = thisNum
Range("G1").Value = thatNum
End Sub
クラッシュし、エラーは発生しません。私は何をすべきか?