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 :

SI imbriqués, je suis perdu [XL-2019]


Sujet :

Excel

  1. #1
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2018
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2018
    Messages : 281
    Par défaut SI imbriqués, je suis perdu
    Bonjour à toutes et tous,

    Dans cette discussion j'avais fait appel à vous pour des conseils.
    https://www.developpez.net/forums/d2...ment-doublons/
    N'ayant pas eu de pistes de réflexion, je me suis lancé dans des SI imbriqués mais je n'arrive pas à écrire la formule magique.

    Pour l'instant Excel est plus fort que moi.

    Mon tableau avec la formule en AB7 qui fait en partie le boulot.

    Nom : Traitement Doublons.png
Affichages : 138
Taille : 56,6 Ko

    Colonne AA : Qtés
    Colonne AB : Qtés Retenues (c'est là que j'ai un soucis). En vert c'est bon, en rouge le résultat obtenu n'est pas celui escompté.
    Colonne AC : Qtés attendues

    AB7 =SI([@Libellé]=Z6;"0";SI([@Libellé]=Z8;[@Qté]+AA8;[@Qté]-AA8))
    => Si le libellé est égal à celui du dessus alors 0, sinon
    ==>Si le libellé est égal à celui du dessous alors on ajoute la Qté, sinon on la soustrait

    AB9 =SI([@Libellé]=Z8;"0";SI([@Libellé]=Z10;[@Qté]+AA10;[@Qté]-AA10))
    => Ici le libellé n'est pas égal à celui du dessus
    ==> Le libellé n'est pas égal à celui du dessous
    Donc il faut prendre AA9

    AB10 =SI([@Libellé]=Z9;"0";SI([@Libellé]=Z11;[@Qté]+AA11;[@Qté]-AA11))
    => Ici le libellé n'est pas égal à celui du dessus
    ==> Le libellé n'est pas égal à celui du dessous
    Donc il faut prendre AA10

    AB11 =SI([@Libellé]=Z10;"0";SI([@Libellé]=Z12;[@Qté]+AA12;[@Qté]-AA12))
    => Ici le libellé n'est pas égal à celui du dessus
    ==> Le libellé n'est pas égal à celui du dessous
    Donc il faut prendre AA11


    C'est cette situation en bleue que je n'arrive pas à intégrer dans ma formule.

    Je vous joint le fichier qui me sert de test. Traitement doublons.xlsx

    Merci pour votre aide.

    Philippe

  2. #2
    Membre émérite
    Homme Profil pro
    utilisateur
    Inscrit en
    Janvier 2017
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : utilisateur
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2017
    Messages : 678
    Par défaut
    Bonjour Phil333250, le forum

    "Dans cette discussion j'avais fait appel à vous pour des conseils.
    https://www.developpez.net/forums/d2...ment-doublons/
    N'ayant pas eu de pistes de réflexion, je me suis lancé dans des SI imbriqués mais je n'arrive pas à écrire la formule magique."
    Nom : Phil333250.png
Affichages : 104
Taille : 53,4 Ko

    en utilisant la formule ci-dessous on abouti au résultat attendu en colonne AC
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ESTNUM(EQUIV($Z7;$Z$6:$Z6;0));0;SOMME.SI.ENS($AA$7:$AA$25;$Z$7:$Z$25;$Z7))
    Formule qui renvoie 0 si le libellé est retrouvé dans les enregistrements précédents
    avec la partie : ESTNUM(EQUIV($Z7;$Z$6:$Z6;0))
    et qui fait la somme de la Qté quand le libellé est rencontré pour la première fois
    grâce à : SOMME.SI.ENS($AA$7:$AA$25;$Z$7:$Z$25;$Z7)


  3. #3
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2018
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2018
    Messages : 281
    Par défaut
    Bonjour njhub,

    Un grand merci, vous me sortez une épine du pied.
    Je n'ai plus qu'à comprendre cette formule.

    Philippe

  4. #4
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 560
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 560
    Par défaut
    Bonjour,
    quand on a des si imbriqué il faut se faire une cellule modèle puis remplacer tous les termes parleur équivalant.
    1. si(condition;alors;sinon)
    2. Si([@Libellé]=Z8;alors;sinon)
    3. Si([@Libellé]=Z8;0;sinon)
    4. Si([@Libellé]=Z8;0;si(condition;alors;sinon))
    5. Si([@Libellé]=Z8;0;si([@Libellé]=Z10;alors;sinon))
    6. etc.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2018
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2018
    Messages : 281
    Par défaut
    Bonjour,

    Merci pour l'astuce.

    Philippe

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

Discussions similaires

  1. [ODBC] Je suis perdu avec ODBC
    Par Nowhere dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 19/05/2006, 08h50
  2. [Tableaux] aide je suis perdu
    Par covin85 dans le forum Langage
    Réponses: 12
    Dernier message: 14/04/2006, 17h56
  3. [Architecture] EJB ou pas EJB ? Je suis perdu ...
    Par n!co dans le forum Java EE
    Réponses: 18
    Dernier message: 26/01/2006, 18h21
  4. RAM DDR, PC3200, 333Mhz , 400Mhz je suis perdu
    Par ahage4x4 dans le forum Composants
    Réponses: 2
    Dernier message: 08/12/2005, 17h52
  5. DLL et MainForm je suis perdu !
    Par rudy2 dans le forum C++Builder
    Réponses: 28
    Dernier message: 02/01/2005, 18h08

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