Rédiger une "condition personnalisée" dans une "Validation de Données" ? [RESOLU]

christophe82

XLDnaute Nouveau
Bonjour,

J'utilise actuellement la validation de données pour intégrer une liste déroulante dans une cellule et contrôler que la saisie dans cette cellule est correcte.

Jusque là, facile, l'option "Liste" est prévue par défaut dans la fenêtre de validation de données.

Je souhaiterais maintenant mettre une double condition de validité pour pouvoir saisir dans cette cellule à savoir :
1- Que la valeur soit comprise dans ma liste de donnée (toujours)
2- Que l'on ne puisse saisir cette valeur qu'après un contrôle sur la date du jour

Pour combiner 2 conditions de validité, il faut passer par l'option "Personnalisé" du menu Validation de données.
Et là, la personnalisation consiste à mettre une formule pour définir les conditions de validité (VRAI/FAUX).

Je fais mon affaire du codage de la condition de validité sur la date du jour mais ce que je ne sais pas faire, c'est comment rédiger la condition de validité sur une liste déroulante dans cette option personnalisée.

Est-ce que quelqu'un s'est déjà frotté à la façon de rédiger une liste déroulante ?
Merci de votre aide, je pourrais vous expliquer avec plus de détail ma problématique ou donner un petit fichier exemple si quelqu'un se sent d'attaque sur ce sujet ;)

Merci d'avance de votre aide
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Comment rédiger une "condition personnalisée" dans une "Validation de Données" ?

Bonjour.
À votre place j'écrirais une WorkseetSelection_Change qui sélectionnerait une autre cellule si le contrôle n'est pas bon.
Joignez un classeur exemple si vous ne comprenez pas comment faire.
À +
 

christophe82

XLDnaute Nouveau
Re : Comment rédiger une "condition personnalisée" dans une "Validation de Données" ?

Merci Danreb pour cette idée.

Je ne pense pas jouable de me lancer dans des worksheet_selection en vb : ma contrainte est que j'ai beaucoup de cellules à tester sur de nombreuses feuilles et la solution "naturelle" est me semble-t-il l'utilisation de la validation de données.

Je joint un petit fichier "exemple" pour bien expliquer ce que je cherche à faire.

L'application finale doit permettre de "pointer" les présences ou absences de salariés.
Je le fais sur plusieurs entités et je consolide toutes les données au siège.
Ces données sont ensuite importées dans un système d'établissement de bulletins de paye.
Ainsi, il faut que je m'assure que les motifs d'absence ou de présence sont correctement saisis.

=> Du coup : 1ere contrainte dans la cellule (toutes celles en blanc) : la valeur doit correspondre à l'une de celle de la liste déroulante présente en bas. Ca, ca marche depuis plus d"un an sans souci pour mes utilisateurs.

Pour l'année prochaine, suite à des remontées terrains, je voudrais ajouter une autre contrainte à la saisie : chaque colonne de C à H correspondant à un jour précis (ligne 2), je souhaite interdire la saisie par anticipation comme je l'ai paramétré dans la cellule H5 en rouge.

=> 2nde contrainte : On ne peut pas saisir de valeur dans la cellule si la date entête de colonne est supérieure à la date du jour

Prises individuellement, ces 2 contraintes sont très faciles à paramétrer.
Ce qui est plus compliqué, c'est d'arriver à combiner les 2.
Pour cela, on doit pouvoir utiliser les conditions personnalisées de la validation de données mais là, se trouve le problème du codage de la liste déroulante.

J'ai trouvé des bribes d'infos sur des forums sur la façon de rédiger une liste sous forme de condition personnalisée mais rien qui me permette d'aboutir réellement.

J'espère que ma question est désormais plus claire.
Merci
 

Pièces jointes

  • exemple.xlsx
    32 KB · Affichages: 107
  • exemple.xlsx
    32 KB · Affichages: 106
  • exemple.xlsx
    32 KB · Affichages: 117

Misange

XLDnaute Barbatruc
Re : Comment rédiger une "condition personnalisée" dans une "Validation de Données" ?

Bonjour

on peut tout à fait utiliser une formule dans la validation avec une liste
dans le cas présent :
=SI(C$2>MAINTENANT();"";$A$22:$A$34)
On ne peut alors rien saisir de façon anticipée.
 

christophe82

XLDnaute Nouveau
Re : Comment rédiger une "condition personnalisée" dans une "Validation de Données" ?

Fouyaya :)

Merci pour cette solution.
En effet, je n'avais pas imaginé que l'on pouvait taper une condition dans la zone permettant de définir la zone de la liste déroulante.
Par ce biais, on rend l'utilisation de la liste déroulante variable selon la condition souhaitée.
Dans mon cas, cela marche parfaitement.
C'est finalement tellement simple que j'ai un peu honte :eek:

Merci encore pour cette solution.
 

Discussions similaires

Réponses
8
Affichages
234

Statistiques des forums

Discussions
312 472
Messages
2 088 712
Membres
103 930
dernier inscrit
Jibo