Obliger saisie dans textbox/combobox
Résolu/Fermé
pftmarine
Messages postés
32
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
3 décembre 2016
-
Modifié par pijaku le 28/07/2014 à 16:26
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 29 juil. 2014 à 19:03
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 29 juil. 2014 à 19:03
A voir également:
- Obliger saisie dans textbox/combobox
- Saisie gestuelle iphone - Guide
- Saisie vocale sms - Guide
- Gboard saisie vocale - Accueil - Applications & Logiciels
- Saisie vocale whatsapp - Accueil - Messagerie instantanée
- Saisie automatique - Guide
4 réponses
WeaponEDGE
Messages postés
113
Date d'inscription
vendredi 18 juillet 2014
Statut
Membre
Dernière intervention
21 novembre 2014
9
Modifié par pijaku le 28/07/2014 à 16:27
Modifié par pijaku le 28/07/2014 à 16:27
Bonjour, il faudrait rajouter ce code en début de macro :
Pour que cette Marco fonctionne, il faut que le formulaire s'appelle Userform1, que les ComboBox s'appelle ComboBox1 à ComboBox15 et les TextBox TextBox1 à TexBox3
Nb_cmb = 15
Nb_Txb = 3
for i = 1 to Nb_cmb
if userform1.controls("ComboBox" & i)="" then
msgbox("Merci de remplir tous les champs.")
exit sub
end if
next i
for i = 1 to Nb_Txb
if userform1.controls("TextBox" & i)="" then
msgbox("Merci de remplir tous les champs.")
exit sub
end if
next i
Pour que cette Marco fonctionne, il faut que le formulaire s'appelle Userform1, que les ComboBox s'appelle ComboBox1 à ComboBox15 et les TextBox TextBox1 à TexBox3
via55
Messages postés
14504
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
21 décembre 2024
2 738
28 juil. 2014 à 16:27
28 juil. 2014 à 16:27
Bonjour
Renumerote tes combobox pour avoir des n°s qui se suivent de 1 à 14
Code à mettre en début de ta macro
bad = 0
For n = 1 To 14
If Me.Controls("ComboBox" & n).Value = "" Then bad = bad + 1
Next n
If Me.TextBox1.Value = "" Then bad = bad + 1
If bad > 0 Then MsgBox (bad & " renseignements manquants, validation impossible") :exit sub
Cdlmnt
Renumerote tes combobox pour avoir des n°s qui se suivent de 1 à 14
Code à mettre en début de ta macro
bad = 0
For n = 1 To 14
If Me.Controls("ComboBox" & n).Value = "" Then bad = bad + 1
Next n
If Me.TextBox1.Value = "" Then bad = bad + 1
If bad > 0 Then MsgBox (bad & " renseignements manquants, validation impossible") :exit sub
Cdlmnt
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
28 juil. 2014 à 16:47
28 juil. 2014 à 16:47
Bonjour pftmarine
Pour m'a part, je contrôle les entrées, une par une, au début de la validation.
C'est un peu bourrin, mais ça me permet d'adapter mon message en fonction de la donnée manquante.
Ou de vérifier si une donnée correspond à l'entrée attendu (date, nombre) pour les TextBox1 ou autre
style:
if ComboBox1= "" then MsgBox("..."): end sub
Une autre solution
cordialement
Pour m'a part, je contrôle les entrées, une par une, au début de la validation.
C'est un peu bourrin, mais ça me permet d'adapter mon message en fonction de la donnée manquante.
Ou de vérifier si une donnée correspond à l'entrée attendu (date, nombre) pour les TextBox1 ou autre
style:
if ComboBox1= "" then MsgBox("..."): end sub
Une autre solution
cordialement
pftmarine
Messages postés
32
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
3 décembre 2016
28 juil. 2014 à 17:17
28 juil. 2014 à 17:17
Merci à tout le monde pour les réponses !
J'ai finalement appliqué la dernière un peu "bourrin" ;) mais plus rapide et plus simple à comprendre et à mettre en place pour moi qui débute en vba.
De plus ce n'est pas moi qui gérera le fichier ensuite et la personne qui prendra le relais s'y connait peu en vba donc si elle doit modifier le code il vaut mieux quelque chose de simple à comprendre.
Et par contre autre question, je souhaiterai limiter la saisie des dates, c'est à dire que par exemple dans mon formulaire de janvier je voudrais qu'il ne soit possible de saisir qu'une date comprise entre le 01/01/2014 et 31/01/2014 (j'ai 1 textbox date de début et 1 textbox de fin).
Merci encore !
J'ai finalement appliqué la dernière un peu "bourrin" ;) mais plus rapide et plus simple à comprendre et à mettre en place pour moi qui débute en vba.
De plus ce n'est pas moi qui gérera le fichier ensuite et la personne qui prendra le relais s'y connait peu en vba donc si elle doit modifier le code il vaut mieux quelque chose de simple à comprendre.
Et par contre autre question, je souhaiterai limiter la saisie des dates, c'est à dire que par exemple dans mon formulaire de janvier je voudrais qu'il ne soit possible de saisir qu'une date comprise entre le 01/01/2014 et 31/01/2014 (j'ai 1 textbox date de début et 1 textbox de fin).
Merci encore !
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
28 juil. 2014 à 18:57
28 juil. 2014 à 18:57
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
28 juil. 2014 à 21:18
28 juil. 2014 à 21:18
Rebonsoir
En tenant compte du cas ou il n'y a pas de date de fin
https://www.cjoint.com/?3GCvqZSGv5i
Cordialement
En tenant compte du cas ou il n'y a pas de date de fin
https://www.cjoint.com/?3GCvqZSGv5i
Cordialement
pftmarine
Messages postés
32
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
3 décembre 2016
29 juil. 2014 à 09:34
29 juil. 2014 à 09:34
Merci beaucoup pour votre aide Iama !! Tout marche c'est nickel :)
Cdlt
Cdlt
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
29 juil. 2014 à 19:03
29 juil. 2014 à 19:03
Salut, j'en suis très content.
Oublie pas de signaler que le sujet est résolu
Iama
A+
Oublie pas de signaler que le sujet est résolu
Iama
A+