Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Sur userform, si toutes les textbox (32) sont vides, alors exit sub

donpopo

XLDnaute Occasionnel
Bonsoir le forum,

Je cherche depuis quelques temps à créer une condition.

J'ai 32 textbox sur un userform ( de 15 à 46); je souhaite sortir de la procédure d'encodage de l'userform si AUCUN textbox n'est rempli.
J'ai essayé plusieurs moyens avec des boucles for ... next i, mais cela me sort de la procédure à la première textbox vide.

Quelqu'un aurait-il une idée pour m'aider?
Merci d'avance,

donpopo
 
Solution
Bonsoi Donpopo,
Faites le contraire, compter celles qui sont non vides :
VB:
    Vide = 0                    ' 0 si vide
    For i = 15 To 46
        If Me.TextBox(i) <> "" Then Vide = Vide + 1
    Next i
    If Vide = 0 Then Exit Sub   ' si 0 alors c'est que tout est vide

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoi Donpopo,
Faites le contraire, compter celles qui sont non vides :
VB:
    Vide = 0                    ' 0 si vide
    For i = 15 To 46
        If Me.TextBox(i) <> "" Then Vide = Vide + 1
    Next i
    If Vide = 0 Then Exit Sub   ' si 0 alors c'est que tout est vide
 

mapomme

XLDnaute Barbatruc
Bonsoir @donpopo

Essayez :
VB:
   For i = 15 To 46: s = s & Me.Controls("textbox" & i): Next
   If s = "" Then Exit Sub
ou bien
VB:
Dim i&, j&
   For i = 15 To 46: j = j - (Me.Controls("textbox" & i) <> ""): Next
   If j = 0 Then Exit Sub

edit : bonsoir @sylvanu
 
Dernière édition:

Discussions similaires

Réponses
7
Affichages
1 K
Réponses
18
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…