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

[-RESOLUTO-]Simplifier le code d'un USF

Ilino

XLDnaute Barbatruc
Forum buon anno
je souhaite a simplifier le code ci-dessous
Code:
If TextBox1.Value = "" Then
     Label9.Visible = True
     Exit Sub
    End If
If TextBox2.Value = "" Then
     Label11.Visible = True
     Exit Sub
    End If
 If TextBox4.Value = "" Then
     Label12.Visible = True
     Exit Sub
    End If
If TextBox3.Value = "" Then
     Label13.Visible = True
     Exit Sub
    End If
If TextBox5.Value = "" Then
     Label14.Visible = True
     Exit Sub
    End If
GRAZIE PAR AVANCE
EDIT: ci dessous un code presque ce que je cherche pour controler les TextBox avant la validation (grazie ROBERT )
PHP:
Private Sub CommandButton1_Click() 'bouton de commande de validation de l'UserForm
 Dim ctrl As Control 'déclare la variable ctrl
 For Each ctrl In Me.Controls 'boucle sur tous les contrôles de l'userform
     If TypeOf ctrl Is MSForms.TextBox And ctrl.Value = "" Then 'condition : si le type de contôle est une Textbox et si elle est vide
         ctrl.SetFocus 'place le curserur dans la Textbox
         MsgBox "Vous devez éditer ce champs !" 'message
     End If 'fin de la condition
 Next ctrl 'prochain contrôle de l'userform
 End Sub
mais il se bloque a ce niveau :
PHP:
 If TypeOf ctrl Is MSForms.TextBox And ctrl.Value = "" Then 'condition : si le type de contôle est une Textbox et si elle est vide
avec un message d'erreur d'execution 438
Propriété ou méthode non gérée par cet objet
GRAZIE
 

Pièces jointes

  • ILINO CONTRATS.xlsm
    19.9 KB · Affichages: 29
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Simplifier le code d'un USF

Bonjour Ilino,

un moyen de simplifier serait d'abord de mettre un peu d'ordre

Si:
TBox1 est en rapport avec Label1
TBox2 est en rapport avec Label2
TBox3 est en rapport avec Label3
...................

tu pourrais alors utiliser uniquement ceci:

Code:
For i = 1 To 5
     If Me.Controls("TextBox" & i).Value = "" Then
     Me.Controls("Label" & i).Visible = True
End If

à+
Philippe
 

Discussions similaires

Réponses
12
Affichages
486
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…