Fonctions SI imbriquées et dépendances de cellules

Fermé
Semrodia - 1 mars 2018 à 16:39
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 - 2 mars 2018 à 02:21
Bonjour à la communauté,

Je dois avouer ne pas avoir su quoi marquer comme titre, j'espère que ce sera plus compréhensible après mes quelques mots.

Je fais actuellement une BDD pour un gite communal tenu par un membre de ma famille. De cette BDD, je sortirai des statistiques, du publipostage email et une automatisation de la création de facture. C'est pour ce dernier élément que je viens vous demander votre aide.

J'ai donc une BDD en Feuille1 et ma facture en Feuille 2. Le but est d'utiliser seulement le nom de famille pour nourrir une fonction INDEX pour la plupart des infos et ainsi "automatiser". Mon problème est dans le libellé des lignes de facture. J'ai utilisé pour ma première ligne (cellule A15) une fonction SI imbriquée comme celle-ci :

=SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);6)<>0;"Chambre de deux personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);7)<>0;"Chambre de trois personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);8)<>0;"Chambre de quatre personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);9)<>0;"Chambre de six personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);10)<>"";"Personne supplémentaire";"")))))

(Je sais c'est lourd mais je ne sais pas trop comment faire autrement... surtout qu'il y a des tonnes d'autres produits à mettre)

Mon problème est sur la ligne juste au dessous : je cherche à produire une fonction qui fasse la même recherche mais qui empêche d'afficher un même résultat qu'A15 (le tout pour avoir tous les éléments saisis dans la BDD en facture). A prendre en compte que ma fonction SI imbriquée devrait être bien plus longue puisqu'il y a une quinzaine d'éléments facturables.

Des idées ? Des conseils ?

Je vous mets le lien ici de la feuille Excel : https://mon-partage.fr/f/zpAgr5tX/

D'avance, merci pour votre aide.
A voir également:

3 réponses

Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
1 mars 2018 à 17:24
Bonjour.

Une première idée, qui est aussi un conseil :
Tu attribues à la cellule
Feuil1!1:1048576
le nom F1F ;
du coup ta formule
SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);6)<>0;"Chambre de deux personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);7)<>0;"Chambre de trois personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);8)<>0;"Chambre de quatre personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);9)<>0;"Chambre de six personnes";SI(INDEX(Feuil1!1:1048576;EQUIV(D8;Feuil1!C:C);10)<>"";"Personne supplémentaire";"")))))
s'écrira
SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);6)<>0;"Chambre de deux personnes";SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);7)<>0;"Chambre de trois personnes";SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);8)<>0;"Chambre de quatre personnes";SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);9)<>0;"Chambre de six personnes";SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);10)<>"";"Personne supplémentaire";"")))))
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
1 mars 2018 à 17:34
Deuxième idée/conseil :
Dans des cellules disponibles de ton classeur tu saisis les textes "Chambre de deux personnes", "Chambre de trois personnes", "Chambre de quatre personnes" etc. et tu leur attribues les noms C2P, C3P, C4P, C6P et PS.
Ta formule peut alors s'écrire
SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);6)<>0;C2P;SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);7)<>0;C3P;SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);8)<>0;C4P;SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);9)<>0;C6P;SI(INDEX(F1F;EQUIV(D8;Feuil1!C:C);10)<>"";PS;"")))))
0
Bonsoir Raymond et merci pour vos deux réponses.

Je prends bonne note pour vos idées & conseils pour lesquels je vous remercie.

Il me semble que l'effet de ces conseils est de faciliter et de raccourcir la saisie de la fonction SI imbriquée.

Avez vous un conseil concernant cette cellule A16 qui doit produire un résultat différent afin d'avoir une facture complete au bout du compte ?

Merci pour votre assistance,
Sem
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
2 mars 2018 à 02:21
Concernant cette cellule A16, je ne vois absolument pas comment on pourrait faire ça " je cherche à produire une fonction qui fasse la même recherche mais qui empêche d'afficher un même résultat qu'A15 ", pour la bonne raison qu'une même formule ne peut donner qu'un même résultat ...
Mais si tu m'expliquais la logique de ta formule, en même temps que la procédure de facturation, peut-être que je trouverais une idée (ce qui n'est pas certain du tout).
Et c'est pourquoi mon intervention se bornait effectivement à réduire la taille de la formule.
0