Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

formule trop longue

6 réponses
Avatar
joseph84
Bonjour,

J'ai une formule excel que j'ai convertie en code vba grace =E0
l'enregistreur VBA mais malheureusement sa ne fonctionne pas je crois
qu'elle trop longue pour qu'elle soit execute

=3DSI(ET(ESTERREUR(CHERCHE("(",D3)),L3=3D"Annulation
commande"),"Annulation",SI(ET(ESTERREUR(CHERCHE("(",D3)),L3=3D"Demande."),"=
Demande
de modif.",SI(ET(ESTERREUR(CHERCHE("(",D3)),L3=3D"1ere
commande"),"Parrainage",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)=3D"3=
",OU(ESTERREUR(CHERCHE("reparation",S3))=3DFAUX,ESTERREUR(CHERCHE("r=E9para=
tion",S3))=3DFAUX,)),"Ligne
r=E9paration",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)=3D"3",ESTERREU=
R(CHERCHE("relance",S3))=3DFAUX),"Remplacement
ligne
ferm=E9e",SI(ET(ESTERREUR(CHERCHE("(",D3)),OU(GAUCHE(AR3,4)=3D"RELA",GAUCHE=
(AR3,4)=3D"REPR"),OU(L3=3D"R=E9gulier",L3=3D"=C9volution",L3=3D"Rev.
=C9volution artistique",L3=3D"Rev.
Regulier")),"Relance",SI(OU(ET(ESTERREUR(CHERCHE("(",D3)),OU(L3=3D"R=E9guli=
er",L3=3D"=C9volution",L3=3D"=C9volution",L3=3D"Rev.
Regulier")),ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)<>"3",L3=3D"Autres")=
),"Spectacle",SI(D3=3D"Costume
(Test S.T.)","Test externe",SI(ET(D3=3D"Costume (Client
Divers)",ESTERREUR(CHERCHE("service",S3))=3DFAUX),"Demande","Autre"))))))))=
)

je ne sais pas quoi faire

Merci!

6 réponses

Avatar
joseph84
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
Avatar
bcar
Bonjour,

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 :
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))úUX,ESTERREUR(CHERCHE("réparation",S3))úUX,)),"Ligne
réparation",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)="3",ESTERREUR(CHERCHE("relance",S3))úUX),"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égulier",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))úUX),"Demande","Autre")))))))))

je ne sais pas quoi faire

Merci!
Avatar
Jacquouille
Bonjour
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
Avatar
MichD
Bonjour,

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
Avatar
bcar
Le 06/02/2012 20:34, joseph84 a écrit :
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
Avatar
concommelalune
On 6 fév, 19:54, joseph84 wrote:
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.") ,"De mande
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))úUX,ESTERREUR(CHERCHE("rép aration", S3))úUX,)),"Ligne
réparation",SI(ET(ESTERREUR(CHERCHE("(",D3)),GAUCHE(BJ3,1)="3",ESTERR EUR(CH ERCHE("relance",S3))úUX),"Remplacement
ligne
fermée",SI(ET(ESTERREUR(CHERCHE("(",D3)),OU(GAUCHE(AR3,4)="RELA",GAUC HE(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égu lier", 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))úUX),"Demande","Autre")))))) )))

je ne sais pas quoi faire

Merci!



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