IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Validation de données à plusieurs conditions [XL-2010]


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    CAO
    Inscrit en
    Décembre 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : CAO
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2014
    Messages : 49
    Points : 43
    Points
    43
    Par défaut Validation de données à plusieurs conditions
    Bonjour à tous,

    Je reviens une nouvelle fois sur le forum car j'ai largement dépassé mon niveau de compétences sur les formules Excel et là je complètement largué...

    Ce que je voudrais faire (si c'est possible...)

    Je souhaiterais par l'intermédiaire d'une formule entrée dans la validation de données sur la cellule A11,
    que suivant le choix fait dans une liste placée sur la cellule K11 les valeurs entrées sur la cellule A11 répondent à plusieurs conditions.

    Soit:
    - Si l'utilisateur choisit dans un / dans la liste sur K11 alors il ne peut entrer aucune valeur dans la cellule A11
    - Si l'utilisateur choisit 4 AB dans la liste sur K11 alors il ne peut entrer que les valeurs 6.325 ou 7.25 dans la cellule A11
    - Si l'utilisateur choisit dans la liste toutes valeurs différentes de "/ " ou" 4 AB" alors il peut entrer dans la cellule A11
    toutes valeurs mais à condition que la somme de A11 à A16 ne dépasse pas la valeur indiquée sur la cellule K1 (7.25 pour le moment)
    et que cette valeur ajoutée soit divisible par 0.125

    J'ai essayé de rédiger la formule ci-dessous, mais cela ne fonctionne pas correctement...
    =SI(K11="/";0;SI(ET(K11="4 AB";OU(A11=3.625;A11=7.25));1;SI(ET(K11<>"/";SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1;OU(MOD(A11;0.125)=0));1;0)))

    Merci d'avance pour votre aide

    Cdlt.
    aalex85

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 767
    Points : 28 626
    Points
    28 626
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    La formule que l'on place dans la règle Personnalisé de l'outil Validation de données doit renvoyer VRAI ou FAUX donc surtout pas la fonction SI mais une suite de ET et/ou de OU
    Comme départ, voilà la formule à placer dans la validation de données pour les deux premiers cas, je te laisse terminer.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =OU(ET(K11="/";NBCAR(A11)=0);ET(K11="4 AB";OU(A11=6,325;A11=7,25)))
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre du Club
    Homme Profil pro
    CAO
    Inscrit en
    Décembre 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : CAO
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2014
    Messages : 49
    Points : 43
    Points
    43
    Par défaut Merci Philippe
    Merci pour ta réponse je vais donc tenter de finaliser la formule en tenant compte de tes remarques avant de refermer la discussion
    Cordialement
    aalex85

  4. #4
    Membre du Club
    Homme Profil pro
    CAO
    Inscrit en
    Décembre 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : CAO
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2014
    Messages : 49
    Points : 43
    Points
    43
    Par défaut La derniere condition n'est pas prise en compte ?
    Bonjour Philippe,

    J'ai complété la formule en tenant compte de tes remarques.
    Par contre la dernière condition indiquant que l'utilisateur ne peut entrer sur la cellule A11 uniquement que la valeur 6.325 ou 7.25 si K11 retourne "4 AB", n'est pas prise en compte.

    Ci-dessous la formule que j'ai complétée
    =OU(ET(K11="/";NBCAR(A11)=0);ET(K11<>"/";SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1;OU(MOD(A11;0.125)=0));ET(K11="4 AB";OU(A11=6.325;A11=7.25))).

    Cordialement
    aalex85

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 767
    Points : 28 626
    Points
    28 626
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    J'ai complété la formule en tenant compte de tes remarques.
    Par contre la dernière condition indiquant que l'utilisateur ne peut entrer sur la cellule A11 uniquement que la valeur 6.325 ou 7.25 si K11 retourne "4 AB", n'est pas prise en compte.
    Je teste toujours les solutions que je propose alors soit j'ai mal compris ton problème soit tu t'es mal exprimé.
    Dans la solution que j'ai proposée
    Si la valeur de la cellule K11
    1) est égale à / on ne peut rien enregistrer en A11 (nombre de caractères doit être égal à 0)
    2) est égale à 4 AB on peut enregistrer soit 6,325 soit 7,25 en A11
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  6. #6
    Membre du Club
    Homme Profil pro
    CAO
    Inscrit en
    Décembre 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : CAO
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2014
    Messages : 49
    Points : 43
    Points
    43
    Par défaut La derniere condition n'est pas prise en compte
    La formule que tu m'as retournée fonctionne parfaitement.
    C'est en essayant de rentrer la condition 3 que je rencontre le problème.

    Condition 3:
    - Si l'utilisateur choisit dans la liste toutes valeurs différentes de "/ " ou" 4 AB" alors il peut entrer dans la cellule A11
    toutes valeurs mais à condition que la somme de A11 à A16 ne dépasse pas la valeur indiquée sur la cellule K1 (7.25 pour le moment) et que cette valeur ajoutée soit divisible par 0.125

    J'ai donc essayé ci-dessous de compléter ta formule pour la condition 3 mais sans succès:

    =OU(ET(K11="/";NBCAR(A11)=0);ET(K11="4 AB";OU(A11=6.325;A11=7.25));ET(K11<>"/";SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1;OU(MOD(A11;0.125)=0)))

  7. #7
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 767
    Points : 28 626
    Points
    28 626
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Comme ceci peut-être.
    J'ai fait des tests mais pas poussés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =OU(ET(K11="/";NBCAR(A11)=0);ET(K11<>"/";K11<>"4 AB";SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1;OU(MOD(A11;0,125)=0));ET(K11="4 AB";OU(A11=6,325;A11=7,25)))
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  8. #8
    Membre du Club
    Homme Profil pro
    CAO
    Inscrit en
    Décembre 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : CAO
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2014
    Messages : 49
    Points : 43
    Points
    43
    Par défaut
    C'est bon la formule fonctionne.

    J'ai juste ajouté sur la condition 3:
    SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1
    car même lorsque K11 retourne 4 AB la somme entre A11 et A16 doit être également exécutée et ce, sans dépasser la valeur de la cellule K1 (7.25)

    Ci-dessous lignes de codes au complet:

    =OU(ET(K11="/";NBCAR(A11)=0);ET(K11<>"/";K11<>"4 AB";SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1;OU(MOD(A11;0.125)=0));ET(K11="4 AB";SOMME(A11:A16)>=0;SOMME(A11:A16)<=K1;OU(A11=3.625;A11=7.25)))

    En tout cas merci pour ton aide car,
    Non seulement je n'y serais jamais parvenu seul
    Mais en plus j'ai appris pas mal de choses

    Cordialement

    aalex85

    Ps
    Je fermerai cette discussion demain au cas ou, car je dois maintenant adapter cette formule sur d'autres champs de cellule

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Somme si avec plusieurs conditions et plage de données variables.
    Par arnold95 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/10/2007, 14h19
  2. Réponses: 5
    Dernier message: 01/10/2007, 14h16
  3. Réponses: 4
    Dernier message: 03/09/2007, 11h03
  4. Validation de plusieurs conditions dans un EVALUATE
    Par apokrif dans le forum Cobol
    Réponses: 4
    Dernier message: 29/03/2007, 23h28
  5. Validation de données Excel sur plusieurs cellules
    Par Civodul4 dans le forum Excel
    Réponses: 3
    Dernier message: 06/03/2006, 11h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo