Modifier code
Bonjour,
Jai un formulaire avec des frames que je rend visible ou non à l'aide d"OptionButton
et j'aimerai avoir mon code plus court et mieux construit
Mon Code :
Private Sub UserForm_Initialize()
Frame1.Visible = True
Frame2.Visible = False
Me.Width = 579
Me.Height = 125
End Sub
Private Sub CommandButton1_Click()
Frame1.Visible = True
Frame2.Visible = False
Frame3.Visible = False
Frame4.Visible = False
Me.Width = 579
Me.Height = 125
Frame1.Top = 18
End Sub
Private Sub CommandButton2_Click()
Frame1.Visible = True
Frame2.Visible = False
Frame3.Visible = False
Frame4.Visible = False
Me.Width = 579
Me.Height = 125
Frame1.Top = 18
End Sub
Private Sub CommandButton3_Click()
Frame1.Visible = True
Frame2.Visible = False
Frame3.Visible = False
Frame4.Visible = False
Me.Width = 579
Me.Height = 125
Frame1.Top = 18
End Sub
Private Sub OptionButton1_Click()
Frame1.Visible = False
Frame2.Visible = True
Frame3.Visible = False
Frame4.Visible = False
Frame2.Top = 18
Me.Width = 579
Me.Height = 205
OptionButton1.Value = False
End Sub
Private Sub OptionButton2_Click()
Frame1.Visible = False
Frame2.Visible = False
Frame3.Visible = True
Frame4.Visible = False
Frame3.Top = 18
Me.Width = 579
Me.Height = 240
OptionButton2.Value = False
End Sub
Private Sub OptionButton3_Click()
Frame1.Visible = False
Frame2.Visible = False
Frame3.Visible = False
Frame4.Visible = True
Frame4.Top = 18
Me.Width = 579
Me.Height = 280
OptionButton3.Value = False
End Sub
Je joint mon formulaire qui seras plus explicite.
Merci d'avance
Max
A
Bonjour,
pour faire plus court, on peut déporter dans une sub le code répété dans chaque Private Sub OptionButtonX_Click()
Par exemple
Private Sub OptionButton1_Click()
Frame1.Visible = False
Frame2.Visible = True
Frame3.Visible = False
Frame4.Visible = False
MaskFrameOB 1
Frame2.Top = 18
Me.Width = 579
Me.Height = 205
OptionButton1.Value = False
End Sub
deviendrait:
Private Sub OptionButton1_Click()
MaskFrameOB 1
Frame2.Top = 18
Me.Width = 579
Me.Height = 205
OptionButton1.Value = False
End Sub
avec la sub commune aux 4 optionbutton:
Sub MaskFrameOB(Num)
For i = 1 To 4
Me("Frame" & i).Visible = (i = Num + 1)
Next
End Sub
un principe similaire pourrait être utilisé pour les CommandButton...
A+