En effet, tu peux, optimiser le code sans pour cela l'accélérer
1 2 3 4 5 6 7 8 9 10 11 12
| Dim Ctrl a&s control
'Tu verrouilles tous les contrôles
For each Ctrl in Me.controls
ctrl.Enabled = false
Next
'avant de déverrouiller ceux que tu veux
TextBoxDerRelvIntHPBleu.Enabled = True
CheckBoxRHP1Bleu.Enabled = True
TextBoxDerRelvReelleHPBleu.Enabled = True
CheckBoxRHP2Bleu.Enabled = True
TextBoxAvDerRelvIntHPBleu.Enabled = True
TextBoxHistoHPBleu.Enabled = True |
Mais tu peux aussi créer un tableau de tes contrôles à deux dimensions, une pour le nom, une pour le boolean true ou False.
Ton code sera peut-être plus lisible mais aussi moins rapide.
Mais tu as une autre solution plus mieux sioux qui serait de placer tous les contrôles dont tu veux interdire l'accès dans un ou plusieurs cadre (frame) selon leurs dispositions, cadre dont la propriété borderStyle serait = fmBorderStyleNone afin qu'on ne le/s voit pas.
Tu n'aurais plus alors qu'à mettre une seule fois
Frame1.enabled = false 'ou True
Bonne nuit
Partager