J'ai un contrôle de cadre Microsoft Form 2.0 avec trois boutons d'option. Le nom du contrôle de trame est Side
, trois légendes de bouton d'option sont X
, O
et Random
avec respectivement les noms xOption
, oOption
et randomSide
. Le code fonctionne bien, sauf au démarrage, si j'ouvre Excel et exécute le programme immédiatement, il me donnera un Error 91
, notez que l'une des options (X
, O
, ou Random
) est déjà sélectionnée. Afin de se débarrasser de cette erreur, j'ai besoin de sélectionner explicitement une autre option, puis l'erreur disparaît. Je ne sais pas pourquoi cela arrive. Voici le sous le contrôle Frame
Erreur 91 sur le contrôle Frame lors du démarrage
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
La ligne sideLetter = Side.ActiveControl.Caption
est celui qui cause le problème. Je n'ai pas déclaré explicitement Side
comme un contrôle de trame dans le cas où c'est une information utile parce que je pense que l'objet est déjà déclaré juste en faisant le contrôle de trame. Merci d'avance!
est-il de toute façon de déclarer un contrôle de trame spécifique comme un objet? Par exemple, déclarer la variable X comme un objectif de contrôle de trame latérale? –
'Dim myFrame As MSForms.Frame' – ThunderFrame