3つのオプションボタンを持つMicrosoft Form 2.0フレームコントロールがあります。フレームコントロールの名前はSide
、オプションボタンのキャプションはX
,、Random
、xOption
,oOption
、randomSide
です。 起動時を除いて、コードは正常に実行されます。Excelを開いてすぐにプログラムを実行すると、Error 91
が表示されます。オプション(X
、O
、またはRandom
)のいずれかが既に選択されていることに注意してください。このエラーを取り除くには、別のオプションを明示的に選択する必要があります。エラーが消えてしまいます。なぜこのようなことが起こるのか分かりません。ここでFrame
コントロール起動時のフレームコントロールのエラー91
Public Sub Side_Click()
sideLetter = Side.ActiveControl.Caption
If StrComp(sideLetter, "Random") = 0 Then
Randomize
tempRand = Int((Rnd() * 2 + 1))
If tempRand = 1 Then
sideLetter = "X"
Else
sideLetter = "O"
End If
End If
End Sub
ためのサブがあるラインsideLetter = Side.ActiveControl.Caption
は、問題の原因です。明示的にフレームコントロールとしてSide
を宣言していないのは、オブジェクトがフレームコントロールを作成するだけで既に宣言されていると思っているので、役に立つ情報です。前もって感謝します!
はオブジェクトとして特定のフレームコントロールを宣言するとにかくはありますか?たとえば、X変数をサイドフレームコントロールobjとして宣言しますか? –
'Dim myFrame As MSForms.Frame' – ThunderFrame