formule trop longue
Le
joseph84

Bonjour,
J'ai une formule excel que j'ai convertie en code vba grace à
l'enregistreur VBA mais malheureusement sa ne fonctionne pas je crois
qu'elle trop longue pour qu'elle soit execute
=SI(ET(ESTERREUR(CHERCHE("(",D3)),L3="Annulation
commande"),"Annulation",SI(ET(ESTERREUR(CHERCHE("(",D3)),L3="Demande."),"=
Demande
de modif.",SI(ET(ESTERREUR(CHERCHE("(",D3)),L3="1ere
commande"),"Parrainage",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)="3=
",OU(ESTERREUR(CHERCHE("reparation",S3))=FAUX,ESTERREUR(CHERCHE("répara=
tion",S3))=FAUX,)),"Ligne
réparation",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)="3",ESTERREU=
R(CHERCHE("relance",S3))=FAUX),"Remplacement
ligne
fermée",SI(ET(ESTERREUR(CHERCHE("(",D3)),OU(GAUCHE(AR3,4)="RELA",GAUCHE=
(AR3,4)="REPR"),OU(L3="Régulier",L3="Évolution",L3="Rev.
Évolution artistique",L3="Rev.
Regulier")),"Relance",SI(OU(ET(ESTERREUR(CHERCHE("(",D3)),OU(L3="Réguli=
er",L3="Évolution",L3="Évolution",L3="Rev.
Regulier")),ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)<>"3",L3="Autres")=
),"Spectacle",SI(D3="Costume
(Test S.T.)","Test externe",SI(ET(D3="Costume (Client
Divers)",ESTERREUR(CHERCHE("service",S3))=FAUX),"Demande","Autre"))))))))=
)
je ne sais pas quoi faire
Merci!
J'ai une formule excel que j'ai convertie en code vba grace à
l'enregistreur VBA mais malheureusement sa ne fonctionne pas je crois
qu'elle trop longue pour qu'elle soit execute
=SI(ET(ESTERREUR(CHERCHE("(",D3)),L3="Annulation
commande"),"Annulation",SI(ET(ESTERREUR(CHERCHE("(",D3)),L3="Demande."),"=
Demande
de modif.",SI(ET(ESTERREUR(CHERCHE("(",D3)),L3="1ere
commande"),"Parrainage",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)="3=
",OU(ESTERREUR(CHERCHE("reparation",S3))=FAUX,ESTERREUR(CHERCHE("répara=
tion",S3))=FAUX,)),"Ligne
réparation",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)="3",ESTERREU=
R(CHERCHE("relance",S3))=FAUX),"Remplacement
ligne
fermée",SI(ET(ESTERREUR(CHERCHE("(",D3)),OU(GAUCHE(AR3,4)="RELA",GAUCHE=
(AR3,4)="REPR"),OU(L3="Régulier",L3="Évolution",L3="Rev.
Évolution artistique",L3="Rev.
Regulier")),"Relance",SI(OU(ET(ESTERREUR(CHERCHE("(",D3)),OU(L3="Réguli=
er",L3="Évolution",L3="Évolution",L3="Rev.
Regulier")),ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)<>"3",L3="Autres")=
),"Spectacle",SI(D3="Costume
(Test S.T.)","Test externe",SI(ET(D3="Costume (Client
Divers)",ESTERREUR(CHERCHE("service",S3))=FAUX),"Demande","Autre"))))))))=
)
je ne sais pas quoi faire
Merci!
probleme maintenant c'est que cette formule ne fonctionne que dans les
fichier excel qui ont l'extention .xlsm
ce qui m arrange pas du tout :(
si quelqun a une idee pour resoudre ce probleme je suis preneur
Merci
Pourrais tu nous expliquer ce que tu cherche à faire (quel est le but de
cette "grosse" formule) ?
Le 06/02/2012 19:54, joseph84 a écrit :
En principe, et si mon neurone affecté à la mémoire ne me joue pas de tours
pendables, une cel ne peut contenir que 256 caractères.
L'astuce, dans ton cas, serait de mettre certains textes dans une cellule,
puis de faire appel à celle-ci dans ta formule. Ce système permet de
diminuer le nombre de car d'une cellule.
Si tu fais ce "truc", pas nécessaire d'extension xlsm (qui,
reconnaissons-le, se termine par sm, soit sado-maso....) -))
Bonne chance
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"joseph84" a écrit dans le message de groupe de discussion :
C bon j'ai trouve la solution j'ai concatene ma formule mais le
probleme maintenant c'est que cette formule ne fonctionne que dans les
fichier excel qui ont l'extention .xlsm
ce qui m arrange pas du tout :(
si quelqun a une idee pour resoudre ce probleme je suis preneur
Merci
Tu ne peux pas sauvegarder tes macros avec le format XLXS. Il n'y a rien à faire, c'est par design.
MichD
------------------------------------------
"joseph84" a écrit dans le message de groupe de discussion :
C bon j'ai trouve la solution j'ai concatene ma formule mais le
probleme maintenant c'est que cette formule ne fonctionne que dans les
fichier excel qui ont l'extention .xlsm
ce qui m arrange pas du tout :(
si quelqun a une idee pour resoudre ce probleme je suis preneur
Merci
Enregistre avec l'extension .xls (ancien format)
Tu peux éventuellement perdre un peu de mise en forme si tu as un
document assez complexe (mais Excel t'avertira dans ce cas).
depuis excel 2007
xlsm = il peut y avoir des macro (avec un M comme macro)
xlsx = il ne peut pas y avoir de macro
Format avant 2007
xls = il peut y avoir des macro
essaye de décomposer et de faire simple, en vba le langage est
different et son apprentissage n'est pas simple, mais cela va le coup
et rentable a long terme
=SI(D3="toto";D4="tata";D4="titi")
exemple en vba :
If D3 = "toto" then
D4="tata"
Else
D4="titi"
End If