MACRO OU VALIDATION DONNÉE

Résolu/Fermé
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015 - 8 nov. 2015 à 18:17
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015 - 9 nov. 2015 à 19:35
Bonjour,

j'utilise déjà la validation de donnée (OUI; NON), pour les cellules B23,D23, F23 et H23.

je souhaiterai que l'opérateur puis répondre par OUI ou NON, uniquement si:

-B9, B11 et B16 sont renseigné pour la cellule B23
-D9, D11 et D16 sont renseigné pour la cellule D23
-F9, F11 et F16 sont renseigné pour la cellule F23
-H9, H11 et H16 sont renseigné pour la cellule H23

Si possible avec un message " répondre au question, avant de répondre OUI ou NON"

Merci d'avance
A voir également:

9 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
Modifié par Vaucluse le 8/11/2015 à 18:34
Bonsoir

système de validation à adapter selon vos données, en se passant de VBA

en B23 la validation à placer

en Z1 le texte: Répondre d'abord aux questions ou autre
nommer la cellule Z1:nom alerte

en Y1 Y2 entrer Oui non
nommer ce champ liste

en B23 pour la validation par liste avec cette formule
=SI(OU(B9="";B11="";B16="");alerte;liste)

à faire avec les mêmes textes ou de cellules de référence différents pour chaque ligne de réponse, avec chaque fois un nom différent

crdlmnt

Errare humanum est, perseverare diabolicum
0
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015
8 nov. 2015 à 19:52
Bonjour Vaucluse, le forum,

Merci pour votre réponse, mais votre méthode ne fonctionne pas.

Merci
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
8 nov. 2015 à 20:19
Voila un retour bien catégorique, mais j'ai peu l'habitude de donner des solutions qui ne fonctionnent pas! :-))
voyez ici, la validation en A4 selon ce qui se passe en A1,A2,A3
https://www.cjoint.com/c/EKitrKFL1LJ
crdlmnt
0
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015
8 nov. 2015 à 20:31
Re,

Effectivement, votre test fonctionne bien,
Mais si je clique sur le message dans la liste déroulante, la cellule l'accepte, hors moi je souhaite avoir un message qui bloque la cellule et que l'on puisse répondre par oui ou par non uniquement après avoir renseigné les cellules.

PS: très bonne explication sur le classeur:)

Mimi
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié par Mike-31 le 8/11/2015 à 22:33
Bonsoir le fil,

regarde comme cela,

https://www.cjoint.com/c/EKivFrabiTj

il faut deux plage nommées, une pour OUI et NON et une pour Répondre aux questions
pour aller plus loin, il faudra passer par du VBA si tu as quelques notions
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015
8 nov. 2015 à 23:45
Bonjour le forum,

Merci pour vos réponse, mais je voyais plus une validation de donnée pour la liste OUI / NON et une macro avec Msgbox si les cellules ne sont pas renseignées.

Pour répondre à mike, je connais un peux le VBA.

merci d'avance
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
9 nov. 2015 à 07:41
Bonjour
un essai ici
https://www.cjoint.com/c/EKjgO7qtPKJ
crdlmnt
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
9 nov. 2015 à 08:25
Re,

colle ce code dans les propriétés de ta feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Union([B23], [D23], [F23], [H23])) Is Nothing Then
Application.EnableEvents = False
If Target(-13, 1) = "" Or Target(-11, 1) = "" Or Target(-6, 1) = "" Then MsgBox _
"Vous devez répondre aux questions précédentes", , "pour accéder à cette réponse"
Application.EnableEvents = True
End If
End Sub


ou plus élaboré avec sélection des cellules sans réponse

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Union([B23], [D23], [F23], [H23])) Is Nothing Then
Application.EnableEvents = False
If Target(-13, 1) = "" Or Target(-11, 1) = "" Or Target(-6, 1) = "" Then
MsgBox "Vous devez répondre aux questions précédentes", , "pour accéder à cette réponse"
If Target(-6, 1) = "" Then Target(-6, 1).Select
If Target(-11, 1) = "" Then Target(-11, 1).Select
If Target(-13, 1) = "" Then Target(-13, 1).Select
End If
Application.EnableEvents = True
End If
End Sub


https://www.cjoint.com/c/EKjhzb21L3j
0
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015
9 nov. 2015 à 16:46
Bonjour le forum,

Merci Vaucluse, merci Mike-31, parfait...

Thank you of lot.

Mimi
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
9 nov. 2015 à 17:58
Re,

avec les codes VBA il est possible de jouer et aller plus loin dans les applications, regarde ce fichier
https://www.cjoint.com/c/EKjq6Fflrzj
0
mimi13580 Messages postés 72 Date d'inscription mercredi 29 octobre 2014 Statut Membre Dernière intervention 9 novembre 2015
9 nov. 2015 à 19:35
Re,

C'est pas mal aussi, merci beaucoup :)

Mimi
0