formule de IF imbriqués trop grande!

Nicool

XLDnaute Nouveau
Bonjour le forum!

J'ai un problème, j'ai écrit une grosse formule qui me donne la valeur d'une cellule, en fonction de la date du jour. Le résultat dépend de la semaine à laquelle appartient le jour courant.
Le problème est que j'ai 13 semaines possibles, et la formule que j'obtiens et énorme et elle est refusée par Excel (C2 est la cellule contenant la date d'aujourd'hui):

Code:
=IF(C2<=01/10; 
       IF(ET(C2>=21/08; C2<=27/08); AX4; IF(ET(C2>=28/08; C2<=03/09); BR4; IF(ET(C2>=04/09; C2<=10/09); CB4;
            IF(ET(C2>=11/09; C2<=17/09); CL4; IF(ET(C2>=18/09; C2<=24/09); CV4; IF(ET(C2>=25/09; C2<=01/10); DF4; 0))))));

       
       IF(ET(C2>=02/10; C2<=08/10); 'suite w40->46'!N4; IF(ET(C2>=09/10; C2<=15/10); 'suite w40->46'!X4; 
          IF(ET(C2>=16/10; C2<=22/10); 'suite w40->46'!AH4; IF(ET(C2>=23/10; C2<=29/10); 'suite w40->46'!AR4;
            IF(ET(C2>=30/10; C2<=05/11); 'suite w40->46'!BB4; IF(ET(C2>=06/11; C2<=12/11); 'suite w40->46'!BL4;
              IF(ET(C2>=13/11; C2<=19/11); 'suite w40->46'!BV4; 0)))))))
)


Je crois que ma formule est trop grosse.
Pouvez-vous m'aider à trouver une autre solution?

Je précise que je ne maîtrise pas du tout VBA, pourtant j'imagine que la meilleure solution serait une macro se lançant à l'ouverture du fichier et mettant à jour ma cellule, mais je ne sais pas du tout comment faire, et je dois rendre mon travail rapidement...

merci d'avance!
 

porcinet82

XLDnaute Barbatruc
Re : formule de IF imbriqués trop grande!

Salut Nico,

Je n'y connais rien du tout en formule, mais je sais tout de même que l'on ne pas imbriquer plus de 7 Si dans un meme formule, et que la formule ne peux pas contenir plus de 1024 caractères, donc peut etre que l'erreur se situe par là.

Sinon, mets un bout de ton fichier avec quelques explications, ce que tu as au départ et le résultat souhaité, et je suis sur qu'un(e) formuliste ou macroiste (c'est francais ca ???) ce fera une joie de te trouver quelques solutions.

@+
 

Nicool

XLDnaute Nouveau
Re : formule de IF imbriqués trop grande!

Okay, je vous envoie mon fichier simplifié.
en fait la cellule que je cherche à remplir est la cellule J4 de la feuille 1, elle doit être égale, selon la date, à l'une des cellules AX4, BR4, CB4, CL4... selon la date du jour.

Merci d'avance!
 

Pièces jointes

  • Classeur1.xls
    21 KB · Affichages: 90
  • Classeur1.xls
    21 KB · Affichages: 110
  • Classeur1.xls
    21 KB · Affichages: 105

porcinet82

XLDnaute Barbatruc
Re : formule de IF imbriqués trop grande!

re Nico,

Laisse nous le temps de manger tout de même ;)
Je viens de jeter un oeil a ton fichier, je veux bien remplir J4 en fonction de la date, mais quelle date ??? Il n'y a aucune date sur ton fichier...

Des info supplémentaires seraient les bienvenue je pense.

@+
 

jbdubreuil

XLDnaute Occasionnel
Re : formule de IF imbriqués trop grande!

Salut Nicool salut Porcinet,

J'ai ouvert le fichier excel, et je pense que le plus simple...
... est de reprendre la structure meme de ton fichier et de travailler en colonne plutot qu'en ligne.
Ensuite tout sera plus simple et tu pourras utiliser les Sommeproduit pour effetcuer tes calculs avec les dates que tu souhaites.

Ayant actuellement qq soucis avec mes fichiers lol, je vais essayer de t'aider un peu plus tard.

bon courage,
jb
 

Samantha

XLDnaute Accro
Re : formule de IF imbriqués trop grande!

Bonjour le Forum, les Gens, Nicool, Romain, JB,

D'aucuns vont dire que je radotte mais j'en reviens à ma marotte le nommage de cellules, de plages, de formules...:p

Si(je nomme des formules via Menu/Insertion/Nom;Je peux m'en servir en VBA; ou pas ?)

Parceque via le nommage des cellules je peux au moins imbriquer 49 si dans une formule moi nananère :p

A vous lire


Sam
 

mjo

XLDnaute Impliqué
Re : formule de IF imbriqués trop grande!

Bonjour,

Je suppose qu'en ligne 2 les w33, w34, ... sont les numéros de semaine.
La semaine d'aujourd'hui est la 34, alors que AX4 se trouve dans la plage w33.
De plus il y a lieu de préciser si les w33, w34, ... sont établis suivant la norme US ou suivant le norme ISO.

En C2 = AuJOUrDHUI()
En J4 : =INDIRECT(SUBSTITUE(ADRESSE(1;(NO.SEMAINE(C2;1)-29)*10;4);1;"")&4)
formule à essayer et à adapter si necessaire suivant les remarques ci-dessus.

mjo
 

porcinet82

XLDnaute Barbatruc
Re : formule de IF imbriqués trop grande!

re, Salut JB, Samantha,

Je suis un peu d'accord avec JB pour ce qui est de travailler en ligne plutot qu'en colonne.
Mais pour en revenir a ce problème de date, je ne vis toujours pas ce que je peux faire avec une seule date. Tu dis
je cherche à remplir la cellule J4 de la feuille 1, elle doit être égale, selon la date, à l'une des cellules AX4, BR4, CB4, CL4... selon la date du jour

Comment je sais si si elle est egale a AX4, BR4... Désolé mais je ne suis pas devin, donc fait un effort d'explications si tu veux quelqu'un puisse d'aider...

@+
 

Monique

Nous a quitté
Repose en paix
Re : formule de IF imbriqués trop grande!

Bonjour,

Je ne sais pas si j'ai bien compris

En C1, le n° de semaine de C2 :
=ENT(MOD(ENT((C2-2)/7)+0,6;52+5/28))+1

En I4 :
=DECALER($V$4;0;EQUIV("w"&$C$1;$V$2:$DG$2;0)+7)

Ou bien directement en I4 sans passer par C1 :
=DECALER($V$4;0;EQUIV("w"&ENT(MOD(ENT((C2-2)/7)+0,6;52+5/28))+1;$V$2:$DG$2;0)+7)

Cette formule te renvoie la valeur de "Frais réels" selon la date en C2
 

Nicool

XLDnaute Nouveau
Re : formule de IF imbriqués trop grande!

Merci Monique ça marche très bien!
Sinon je m'essaie quand même à la confection de macros pour ne pas mourrir idiot.

Porcinet: excuse effectivement je n'étais pas clair. Je voulais dire que, si la date d'aujourd'hui se trouve dans la semaine 34, ma cellule doit avoir la valeur de la cellule "fait réel" de la week 34, c'est à dire BH4.

Merci à tous pour votre aide :)
 

Discussions similaires

Réponses
2
Affichages
555

Statistiques des forums

Discussions
312 613
Messages
2 090 233
Membres
104 456
dernier inscrit
mango53200