VBA : Quelle BOX était activée ?

herve62

XLDnaute Barbatruc
Supporter XLD
Bonsoir
Je n'ai jamais fait ce test , est-il possible de le faire... ?
Je mets un fichier pour en mettre un au pif ... peu importe c'est la méthode qui m'intéresse
Si on clique sur OK à Vide juste suite à la frappe dans, par exemple : "Service" ,est il possible d'afficher :
"Saisie interdite , pas de nom selectionné" "
idem si saisie dans d'autres BOX
Merci bien
 

Pièces jointes

  • Classeur2_fini.xlsm
    26.3 KB · Affichages: 20
  • Classeur2_fini.xlsm
    26.3 KB · Affichages: 23
C

Compte Supprimé 979

Guest
Re : VBA : Quelle BOX était activée ?

Bonsoir herve62

Une solution, une boucle sur les controls pour les tester
Code:
Private Sub CommandButton1_Click()  Dim Ctl As Control
  ' Pour chaque control de l'UsF
  For Each Ctl In Me.Controls
    ' Si le control n'est pas un Label
    If InStr(1, Ctl.Name, "Label", vbTextCompare) = 0 Then
      ' Vérifier que le control n'est pa svide
      If Ctl.Value = "" Then
        Ctl.SetFocus
        MsgBox "Merci de mettre/choisir une valeur"
        Exit Sub
      End If
    End If
  Next Ctl
  Unload UserForm1
End Sub

A+
 

gosselien

XLDnaute Barbatruc
Re : VBA : Quelle BOX était activée ?

Bonjour,

ceci peut être ?

Private Sub CommandButton1_Click()
If Len(Box1) = 0 Then MsgBox ("La zone du nom est vide")
Unload UserForm1
End Sub

edit oups meilleure réponse surement de Brunom45 que je salue :)
 

herve62

XLDnaute Barbatruc
Supporter XLD
Re : VBA : Quelle BOX était activée ?

Bonjour
Merci Bruno Gosselein
J'ai plutôt opté pour la seconde : simple 1 ligne
Bruno : en fait comme j'ai marqué c'est juste si l'on commence à remplir juste 1 Box au hasard MAIS les autres peuvent rester Vides
ex : je peux juste mettre le matricule pas le service ;et juste que si le NOM est affiché
J'avais trouvé ça à mettre dans la Box4 par exemple ,mais on dirait pas efficace:
Code:
If Trim(Box1.Value & vbNullString) = vbNullString Then
Box4.Value = ""
Box4.Enabled = False ' Pour celui qui insiste !!!
End If
Sinon je vais chercher à modifier le code avec LEN car comme je suis en BOX Change même si je fais en plus : Box3="" le message se raffiche ?
 

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 880
Membres
103 009
dernier inscrit
dede972