Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Simplifier la formule (formule de siècle)

  • Initiateur de la discussion Initiateur de la discussion Ilino
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Ilino

XLDnaute Barbatruc
😀FORUM Bonsoir
Je reviens a vous pour un help dans la création une nouvelle formule..Voila , je pose mon pblm et espérant être clair
J’ai un tableau de suivie des contrôleurs sur chantier il est constitué de plusieurs colonne (voir le lien http://cjoint.com/?BBkvxGhv9j5) alors je cherche à simplifier ma formule (formule de siècle😀) dans la colonne « Observations » du mon tableau
1. Merci pour votre compréhension
2. Merci par avance qlq soit la réponse
3. Je resterai a votre disposition pour toute éclaircissement
ILINO RAMO
lien: http://cjoint.com/?BBkvxGhv9j5
 
Re : Simplifier la formule (formule de siècle)

FORUM BONJOUR,JC, CISCO bonjour et je suis désolé pour ce retard qui ne depend pas de moi...
JC je ne sais pas ou est le pblm sur le fichier rattaché ???? et portant excel 2010 prend en charge le 2007 !!!!!
CISCO, cette formule telement elle tres tro longue je l'ai nomé formule de siecle (c'est une façon de voir) elle sert a controler le planning de déplacement des controleurs avant la mission et lors de la mission et jour de retour.

et tellement j’ai tors imbriquer la fonction IF je n’arrive pas a sortir du bain
ci dessous la formule selon mon algorithme, je ne sais pas si il peut vous aider de voir un peu mon raisonnement et si j'ai repondu a vos questions merci et encore desolé pour le retard
RAMO ILINO

=SI(Durée<=3;
SI(ET(Départ<>"";Retour>"";TODAY<Départ);CONCATENER("SIEGE : Reste ";Départ-TODAY;" jour(s) pour aller sur chantier"); SI(ET(Départ<>"";Retour<>"";TODAY=Départ); CONCATENER("CHANTIER : Départ aujourd’hui sur chantier");
SI(ET(Départ<>"";Retour<>"";TODAY>Départ; TODAY< Retour); CONCATENER("CHANTIER : Reste "; Retour- TODAY; " jour(s) pour rentré au siège");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY=0;M11=""); CONCATENER("CHANTIER : Retour au siège Aujourd’hui.. Voulez-vous prolonger la durée ???"); SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY=0;M11="oui");CONCATENER("CHANTIER : Prolongation acceptée"); SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour< TODAY;M11="oui");
CONCATENER("CHANTIER : La durée a été prolongée… Voir la cellule A";N° Ligne);
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY=0;M11="Non");
CONCATENER("CHANTIER : Pas de Prolongation de la durée, … Retour aujourd’hui");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; TODAY>= Retour;M11="non");
CONCATENER("SIEGE : Mission accomplie en date du "; TEXTE(Retour; "jjjj-j/mm/aaaa"));
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; TODAY> Retour;M11="";N11="");
CONCATENER("SIEGE : Mission accomplie en date du "; TEXTE(Retour; "jjjj-j/mm/aaaa"));
"")))))))));
SI(Durée>3;
SI(ET(Départ<>""; Retour<>""; TODAY< Départ);
CONCATENER("SIEGE : Reste "; Départ- TODAY;" jour(s) pour aller sur chantier");
SI(ET(Départ<>""; Retour<>""; TODAY= Départ);
CONCATENER("CHANTIER : Départ aujourd’hui sur chantier");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY>3 );
CONCATENER("CHANTIER : Reste "; Retour- TODAY; " jour(s) pour rentré au siège");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour> TODAY; Retour- TODAY<=3;M11="");
CONCATENER("CHANTIER : Reste "; Retour- TODAY " Jour(s) pour rentrer au siège …Voulez-vous prolonger la durée ???");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour> TODAY; Retour- TODAY<=3;M11="oui");
CONCATENER("CHANTIER : Prolongation acceptée … Reste "; Retour- TODAY; " jour(s) ");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour]> TODAY; Retour- TODAY<=3;M11="non");
CONCATENER("CHANTIER : Pas de Prolongation … Reste "; Retour- TODAY; " jour(s) ");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour= TODAY; Retour- TODAY<=3;M11="oui");
CONCATENER("CHANTIER : Prolongation acceptée … Voir la cellule A"; N° Ligne); SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour< TODAY]];M11="oui");
CONCATENER("CHANTIER : La durée a été prolongée… Voir la cellule A"; N° Ligne);
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour= TODAY; Retour- TODAY<=3;M11="NON");
CONCATENER("CHANTIER : Mission accomplie… Retour aujourd’hui ");
SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour< TODAY;M11="non");
CONCATENER("CHANTIER : Mission accomplie en date du "; TEXTE(Retour; "jjjj-j/mm/aaaa"));
"ERREUR: Sélectionnez dans la colonne « M » OUI ou NON "))))))))))))
 
Re : Simplifier la formule (formule de siècle)

Re bonjoir tous le monde
sinon je vous propose de tester seulement les colonnes ( F G I L M et N) qui correspondent aux colonnes ( Durée, Départ, Retour, Observation ( la formule elle est dans cette colonne), Ou/Non, N° Ligne)
merci
 
Re : Simplifier la formule (formule de siècle)

Bonjour à tous,

CISCO : Capture des propriétés



A + à tous
 

Pièces jointes

  • Capture_1.jpg
    50.4 KB · Affichages: 170
  • Capture_1.jpg
    50.4 KB · Affichages: 174
Re : Simplifier la formule (formule de siècle)

BONJOUR FORUM, Bonjour JC; je t'informe que ces deux feuille par rapport a mon souci sont inutile la question que je te pose si tu permet bien sure est ce que la formule de la colonne Observation ça fonctionne chez toi ?
merci
 
Re : Simplifier la formule (formule de siècle)

Bonjour à tous, bonjour Ilino

Vu la longueur de ta formule, je crois qu'une explication plus précise de l'objectif à atteindre serait la bienvenue.

@plus
 
Re : Simplifier la formule (formule de siècle)

BONJOUR FORUM , salut CISCO
MERCI POUR LA REPONSE et je vous communique ci desous les explications de ma formule( tres tro longue)

la permiere partie c'est la formule
------------------------------------------------------------------------------------------------------------------
1. SI(Durée<=3;
1.1. SI(ET(Départ<>"";Retour>"";TODAY<Départ);CONCATENER("SIEGE : Reste ";Départ-TODAY;" jour(s) pour aller sur chantier");
1.2. SI(ET(Départ<>"";Retour<>"";TODAY=Départ); CONCATENER("CHANTIER : Départ aujourd’hui sur chantier");
1.3. SI(ET(Départ<>"";Retour<>"";TODAY>Départ; TODAY< Retour); CONCATENER("CHANTIER : Reste "; Retour- TODAY; " jour(s) pour rentré au siège");
1.4. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY=0;M11=""); CONCATENER("CHANTIER : Retour au siège Aujourd’hui.. Voulez-vous prolonger la durée ???");
1.4.1. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY=0;M11="oui");CONCATENER("CHANTIER : Prolongation acceptée");
1.5. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour< TODAY;M11="oui");
CONCATENER("CHANTIER : La durée a été prolongée… Voir la cellule A";N° Ligne);
1.6. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY=0;M11="Non");
CONCATENER("CHANTIER : Pas de Prolongation de la durée, … Retour aujourd’hui");
1.7. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; TODAY>= Retour;M11="non");
CONCATENER("SIEGE : Mission accomplie en date du "; TEXTE(Retour; "jjjj-j/mm/aaaa"));
1.8. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; TODAY> Retour;M11="";N11="");
CONCATENER("SIEGE : Mission accomplie en date du "; TEXTE(Retour; "jjjj-j/mm/aaaa"));
"")))))))));

2. SI(Durée>3;

2.1. SI(ET(Départ<>""; Retour<>""; TODAY< Départ);
CONCATENER("SIEGE : Reste "; Départ- TODAY;" jour(s) pour aller sur chantier");
2.2. SI(ET(Départ<>""; Retour<>""; TODAY= Départ);
CONCATENER("CHANTIER : Départ aujourd’hui sur chantier");
2.3. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour- TODAY>3 );
CONCATENER("CHANTIER : Reste "; Retour- TODAY; " jour(s) pour rentré au siège");
2.4. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour> TODAY; Retour- TODAY<=3;M11="");
CONCATENER("CHANTIER : Reste "; Retour- TODAY " Jour(s) pour rentrer au siège …Voulez-vous prolonger la durée ???");
2.5. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour> TODAY; Retour- TODAY<=3;M11="oui");
CONCATENER("CHANTIER : Prolongation acceptée … Reste "; Retour- TODAY; " jour(s) ");
2.6. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour]> TODAY; Retour- TODAY<=3;M11="non");
CONCATENER("CHANTIER : Pas de Prolongation … Reste "; Retour- TODAY; " jour(s) ");
2.7. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour= TODAY; Retour- TODAY<=3;M11="oui");
CONCATENER("CHANTIER : Prolongation acceptée … Voir la cellule A"; N° Ligne);
2.8. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour< TODAY]];M11="oui");
CONCATENER("CHANTIER : La durée a été prolongée… Voir la cellule A"; N° Ligne);
2.9. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour= TODAY; Retour- TODAY<=3;M11="NON");
CONCATENER("CHANTIER : Mission accomplie… Retour aujourd’hui ");
2.10. SI(ET(Départ<>""; Retour<>""; TODAY> Départ; Retour< TODAY;M11="non");
CONCATENER("CHANTIER : Mission accomplie en date du "; TEXTE(Retour; "jjjj-j/mm/aaaa"));
"ERREUR: Sélectionnez dans la colonne « M » OUI ou NON "))))))))))))
---------------------------------------------------------------------
la suite c'est l'explication
Je résume ma formule
Toute la formule est basée sur la cellule durée
--------------------------------------------------------------------
1. si la durée est inf ou égale à 3jours on a :
1.1. SI la date de départ n’est pas encore atteindre (aujourd’hui <départ) alors la colonne observation affiche ce message "SIEGE : Reste (Départ- aujourd’hui)jour(s) pour aller sur chantier"
1.2. si non si la date du départ est aujourd’hui alors la colonne observation affiche ce message
"CHANTIER : Départ aujourd’hui sur chantier"
1.3. si on a dépassé la date de départ et on n’a pas encore atteindre la date retour (départ< aujourd’hui<retour) alors la colonne observation affiche ce message
"CHANTIER : Reste ( Retour- aujourd’hui) jour(s) pour rentré au siège"
1.4. si on a atteindre la date de retour ( Retour= aujourd’hui) alors la colonne observation affiche ce message "CHANTIER : Retour au siège Aujourd’hui.. Voulez-vous prolonger la durée ???"
NB : ici j’ai rajouté une autre colonne (oui/non)
1.4.1 si on a atteindre la date de retour ( Retour= aujourd’hui) et j’ai répondu dans la cellule (oui/non) oui alors la colonne observation affiche ce message "CHANTIER : Prolongation acceptée"
1.5. si on a dépassé la date de départ et la date retour (départ< aujourd’hui ; retour< aujourd’hui) et j’ai répondu oui dans la colonne (oui/non) alors la colonne observation affiche ce message : « CHANTIER : La durée a été prolongée… Voir la cellule A";N° Ligne »
1.6. si on a dépassé la date de départ et on a atteindre la date de retour (départ< aujourd’hui ; retour= aujourd’hui) et j’ai répondu non dans la colonne (oui/non) alors la colonne observation affiche ce message : « CHANTIER : Pas de Prolongation de la durée, … Retour aujourd’hui»
1.7. si on a dépassé la date de départ et la date de retour (départ< aujourd’hui ; retour< aujourd’hui) et j’ai répondu non dans la colonne (oui/non) alors la colonne observation affiche ce message :
« SIEGE : Mission accomplie en date du ‘afficher la date de retour’ »
1.8. si on a dépassé la date de départ et la date de retour (départ< aujourd’hui ; retour< aujourd’hui) et j’ai rien répondu dans la colonne (oui/non) alors la colonne observation affiche ce message :
« SIEGE : Mission accomplie en date du ‘afficher la date de retour’ »


2. si la durée est sup à 3jours on a :
2.1. SI la date de départ n’est pas encore atteindre (aujourd’hui <départ) alors la colonne observation affiche ce message "SIEGE : Reste (Départ- aujourd’hui)jour(s) pour aller sur chantier"
2.2. si non si la date du départ est aujourd’hui alors la colonne observation affiche ce message
"CHANTIER : Départ aujourd’hui sur chantier"
2.3. si on a dépassé la date de départ et on n’a pas encore atteindre la date retour et nous reste plus 3 jours avant retour (Retour- aujourd’hui>3) alors la colonne observation affiche ce message
"CHANTIER : Reste ( Retour- aujourd’hui) jour(s) pour rentré au siège"
2.4. si on a dépassé la date de départ et on n’a pas encore atteindre la date retour et nous reste 3 jours avant retour (Retour- aujourd’hui<=3) et la colonne (oui/non) vide alors la colonne observation affiche ce message
"CHANTIER : Reste (Retour- TODAY )" Jour(s) pour rentrer au siège …Voulez-vous prolonger la durée ???)
2.5. si on a dépassé la date de départ et on n’a pas encore atteindre la date retour et nous moins ou égale a 3 jours avant retour (Retour- aujourd’hui<=3) et j’ai répondu dans la colonne( oui/non) par oui alors la colonne observation affiche ce message
("CHANTIER : Prolongation acceptée … Reste (Retour- TODAY) jour(s) "
2.6. . si on a dépassé la date de départ et on n’a pas encore atteindre la date retour et nous moins ou égale a 3 jours avant retour (Retour- aujourd’hui<=3) et j’ai répondu dans la colonne( oui/non) par NON alors la colonne observation affiche ce message
("CHANTIER : Pas de Prolongation … Reste(Retour- TODAY) jour(s) "
2.7. si on atteindre la date de retour (Retour= aujourd’hui) et j’ai répondu dans la colonne( oui/non) par OUI alors la colonne observation affiche ce message
"CHANTIER : Prolongation acceptée … Voir la cellule A"; N° Ligne "
2.8. SI on a dépassé la date de retour et j’ai répondu dans la colonne ‘oui/non) par OUI
alors la colonne observation affiche ce message (CHANTIER : La durée a été prolongée… Voir la cellule A"; N° Ligne)
2.9 si le retour est aujourd’hui et j’ai répondu dans la colonne (oui/non) par NON
alors la colonne observation affiche ce message (CHANTIER : Mission accomplie… Retour aujourd’hui)
2.10. si on a depasse la date de retou et dans la colonne (oui/non) on a NON alors la colonne observation c (CHANTIER : Mission accomplie en date du (afficher la date de retou))
Sinon afficher dans la colonne observation ("ERREUR: Sélectionnez dans la colonne « M » OUI ou NON)
---------------------------
Merci par avance
Je vous donne le soin à m’aider de simplifier ou réduire cette fonction
Et je resterai à votre disposition pour n’importe quel remarques et éclaircissement
jour et nuit
 
Dernière édition:
Re : Simplifier la formule (formule de siècle)

Bonjour

Le tout début du travail en pièce jointe.

Trois remarques :

*Tu peux supprimer certains tests. Par exemple, dans le cas SI(X <=3 suivi plus loin de SI(X >3, le second test est inutile, puisque si X n'est pas <=3, c'est qu'il est > 3.
*Pour afficher du texte, tu n'as pas besoin systématiquement d'utiliser la fonction CONCATENER. Si c'est pour associer deux termes , oui, si c'est pour une phrase, ce n'est pas la peine. Par exemple, CONCATENER("bonjour") peut tout s'implement s'écrire "bonjour".
*Je pense qu'il y a certainement moyen de faire plus simple, en changeant complètement de méthode, avec un CHOISIR, ou un tableau. Mais bon, pour le moment, essayons de progressser petit pas à petit pas.

@ plus
 

Pièces jointes

Re : Simplifier la formule (formule de siècle)

Bonjour

Le début de mon travail, une première méthode,en pièce jointe, avec des explications. A toi d'essayer de comprendre et de me dire si cela te semble intéressant.

@ plus
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…