Formule conditionnelle en VBA

ludo93

XLDnaute Nouveau
Bonjours à tous,

Merci d'avance à vous si vous pouvez me répondre à ma question

Voila je voudrais pouvoir simplifier des formules conditionnelle en VBA (débutant en VBA)

1er Forumule
=SI(ESTNUM(GAUCHE(G2;1)*1);SI(A2="61128000";61128100;SI(A2="60625000";60625100;SI(A2="62420000";62421200;A2)));A2)


2eme formule
=SI(OU(GAUCHE(G2;4)="18 -";GAUCHE(G2;4)="37 -";GAUCHE(G2;4)="44 -";GAUCHE(G2;4)="17 -");"TECH";SI(GAUCHE(G2;4)="52 -";"SPORT";SI(OU(GAUCHE(G2;4)="01 -";GAUCHE(G2;4)="02 -";GAUCHE(G2;4)="03 -";GAUCHE(G2;4)="04 -";GAUCHE(G2;4)="05 -";GAUCHE(G2;4)="06 -";GAUCHE(G2;4)="07 -";GAUCHE(G2;4)="08 -";GAUCHE(G2;4)="09 -";GAUCHE(G2;4)="10 -";GAUCHE(G2;4)="11 -";GAUCHE(G2;4)="12 -";GAUCHE(G2;4)="13 -";GAUCHE(G2;4)="14 -";GAUCHE(G2;4)="15 -";GAUCHE(G2;4)="16 -";GAUCHE(G2;4)="19 -";GAUCHE(G2;4)="20 -";GAUCHE(G2;4)="41 -";GAUCHE(G2;4)="42 -";GAUCHE(G2;4)="58 -";GAUCHE(G2;4)="59 -");"EDUC";SI(OU(GAUCHE(G2;4)="21 -";GAUCHE(G2;4)="22 -";;GAUCHE(G2;4)="23 -";GAUCHE(G2;4)="24 -";GAUCHE(G2;4)="25 -";GAUCHE(G2;4)="26 -");"THERAP";B2))))

3eme formule
=SI(B2=C2;B2;SI(ET(B2=60625100;C2="SPORT");60625500;SI(ET(B2=61128100;C2="SPORT");61128500;SI(ET(B2=60625100;C2="EDUC");60625110;SI(ET(B2=61128100;C2="EDUC");61128110;SI(ET(B2=60625100;C2="TECH");60625400;SI(ET(B2=61128100;C2="TECH");61128110;SI(ET(B2=60625100;C2="THERAP");60625200;SI(ET(B2=61128100;C2="THERAP");61128110;1)))))))))


Actuellement ces formules fonctionne correctement mais bien-sur il va me falloir augmenter le nombre d'argument donc je voudrait les passer en MODE VBA pour un question de visibilité

PS : Fichier exemple joint
 

Pièces jointes

  • ficher exemple.xlsx
    235.5 KB · Affichages: 24
Dernière édition:

Chris401

XLDnaute Accro
Re : Formule conditionnelle en VBA

Re

Simplification des formules grâce à des tableaux (voir Feuil1)

Formule 1 :
Code:
=SI(ESTNUM(GAUCHE(G2;1)*1);RECHERCHEV(A2;Feuil1!A:B;2;0);A2)
Formule 2 :
Code:
=SIERREUR(RECHERCHEV(GAUCHE(G2;2);Feuil1!E:F;2;0);B2)
Formule 3 (voir noms définis):
Code:
=SI(B2=C2;B2;INDEX(TABLO;EQUIV(C2;Titres;0);EQUIV(B2;Comptes;0)))
Chris
 

Pièces jointes

  • Ludo93.xlsx
    237.6 KB · Affichages: 32

Discussions similaires

Réponses
9
Affichages
443
Réponses
37
Affichages
2 K

Statistiques des forums

Discussions
312 206
Messages
2 086 226
Membres
103 159
dernier inscrit
FBallea