Effacer Label et TextBox.

  • Initiateur de la discussion Initiateur de la discussion Hulk
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Hulk

XLDnaute Barbatruc
Hello le Forum,

J’ai dans un UserForm ce code :
Code:
Private Sub CheckBox1_Click()
Dim c As Control
For Each c In Me.Controls
If CheckBox1 = True Then
     Select Case TypeName(c)
        Case "TextBox"
         c.Visible = False
        Case "Label"
         c.Visible = False
        Case "CommandButton"
         c.Visible = False
     End Select
Else
     Select Case TypeName(c)
        Case "TextBox"
         c.Visible = True
        Case "Label"
         c.Visible = True
        Case "CommandButton"
         c.Visible = True
     End Select
        TextBox1.SetFocus
End If
Next c
End Sub
Il permet de masquer les TextBox, Label et CommandButton placés dans l'USF grâce à la CheckBox.

Je souhaiterais cependant qu’il ne masque pas tout !

Disons qu’il laisse les TextBox et Label 5, 6, 7 et 8 affichés.

Est-ce possible ?

Voyez le fichier joint svp.

Si quelqu’un a la gentillesse de m’aider, merci d’avance !

Hulk.
 

Pièces jointes

Re : Effacer Label et TextBox.

Salut,

à tester:

Code:
Private Sub CheckBox1_Click()
  Dim i As Byte
  For i = 1 To 10
    If i < 5 Or i > 8 Then
      Controls("Label" & i).Visible = Not CheckBox1
      Controls("TextBox" & i).Visible = Not CheckBox1
    End If
    Sortie.Visible = Not CheckBox1
  Next
  TextBox5.SetFocus
End Sub
 
Re : Effacer Label et TextBox.

Bonjour Hulk, Fo rum,

Personnellement j'utilise cette méthode pour intéragir sur mes controls:
Code:
Private Sub CheckBox8_Change()

For i = 1 To 7 ' à adapter avec les controls que l'on veut modifier
If CheckBox8.Value = True Then Me.Controls("Checkbox" & i).Value = True
Next i
For i = 1 To 7
If Not CheckBox8.Value = True Then Me.Controls("Checkbox" & i).Value = False
Next i

End Sub

Reste plus qu'à rajouter commandbutton, textbox et labels, et remplacer value par visible = true / false

Puis rajouter le If i ...... de Hulk.


Bref plus je me lis, plus je me rend compte que je propose la même chose, pas original du tout 🙄

Bref mais comme j'ai commencé je termine 😀

Bon dimanche.

P.S: sans rancune Hulk 😉😛

Edit: en plus sui lent arffff. Bonjour Dull
 
Re : Effacer Label et TextBox.

Hello,

Merci messieurs pour vos réponses, c'est impec.

Je garde la version à Dull, vous ne m'en voudrez pas les autres..

En effet j'ai réussi à mettre le SetFocus sur le TextBox5 dans le code à Dull alors que dans le tien Fo_rum, je n'ai pas réussi à mettre le SetFocus sur la TextBox1 !

Alex ta proposition n'a pas été retenue, tu es recalé 😀 non je plaisante.
Je n'arrive pas à l'adapter, mais il me semble que les codes de Dull et de Fo_rum feront l'affaire. Merci quand même.

Encore une petite chose :

Si en plus je veux effacer les Label 11, 12 et 13 ??

J'ai essayé en modifiant cette ligne comme ceci :
Code:
If i < 5 Or i > 8 and i < 11 Or i > 13 Then...
ou encore
Code:
If i < 5 Or i > 8 Then
      Controls("Label" & i).Visible = Not CheckBox1
      Controls("TextBox" & i).Visible = Not CheckBox1
    End If
If i < 11 Or i > 13 Then
      Controls("Label" & i).Visible = Not CheckBox1
    End If
    Next i
mais non 😀

Merci encore pour votre aide.

Hulk.
 
Re : Effacer Label et TextBox.

Re,

comme je suis vexé, Hulk 😉, je te donne une info :
remplacer
TextBox5.SetFocus
par
If TextBox1.Visible = True Then TextBox1.SetFocus Else TextBox5.SetFocus
devrait faire l'affaire (même dans ton code Dull 🙂).

Que veux-tu dire par "effacer les labels" ? Les supprimer ou les vider ?
 
Re : Effacer Label et TextBox.

Hello,

Merci bien les amis.

Au fait Fo_rum, je voulais dire "masquer" plutôt que "effacer" !
Aussi, pour le SetFocus ça joue avec le If... comme tu as dis.

Je pensais masquer les Label 11, 12 et 13 déjà existants, mais pour être plus précis, le but de ma question était que je voulais savoir comment faire pour masquer ceux qu'on veut !

Mais Dull en rajoutant des contrôles, m'a donné une des solutions.

Je vais tâcher de faire en sorte de masquer 1, 2, 6, 9 et 12 je vais bien voir si j'y arrive !

Merci à vous et bonne fin de WE à vous.

Hulk.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

A
Réponses
3
Affichages
2 K
Alex6942
A
M
Réponses
3
Affichages
2 K
MONADESIGN82
M
D
Réponses
49
Affichages
9 K
D
Réponses
9
Affichages
1 K
B
Réponses
6
Affichages
1 K
Retour