Formule Excel

Duck -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je suis en train de batir une base de données en Excel, ne voulant pas faire une formule =si interminable, j'ai pensé me créer une table de références avec en premiere colonne le champ recherché et dans la 2ieme colonne la formule a appliquer.

Ex (feuil1)
Ligne Colonne A Colonne B
1 1 =a1+b2
2 2 =c2+d2
etc

(feuil2)

Ligne Colonne A Colonne B
1 2 =recherchev(a1;'feuil1'!A1:B2;2;faux)

Donc j'aimerais qu'il aille chercher la formule en feuil2 reliée a la valeur 2 de la feuil2 et qu'il exécute la formule qu'il va avoir retrouvé soit =c2+d2. En ce moment j'ai été en mesure de ramener la formule =c2+d2 en mettant une apostrophe ' a coté de la formule ce qui rend évidement la formule en texte. Par contre je ne sais pas si c'est possible de ramener cette formule pour qu'elle se calcule.

Merci

6 réponses

anushkafi Messages postés 8 Statut Membre 1
 
ben essayes de faire copier coller pour prendre la meme formule mais avec décalage de case
ex:
=recherchev(a1;'feuille1'!A1:B2;2;faux) => le résultat obtenu concerne la case a1 de la 1e feuille vers la case 2 de la 2e feuille.

slt,
0
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 450
 
Bonsoir
ce que l'on comprend mal, c'est pourquoi vous voulez copier la formule plutôt que le directement le résultat obtenu?
Crdlmnt
0
Duck
 
Bonjour,
La raison c'est qu'habituellement j,aurais fait un =si, mais la formule serait trop longue a faire a cause du nombre de parametres. De plus je veux que ma formule prenne en considération les parametres qui se retrouvent sur la ligne, donc ce que je veux c'est que mon recherchev réussisse a trouver la bonne formule a copier(cette partie est déja faite) et qu'elle vienne me copier la formule et a ce moment je veux que la formule fraichement copiée mette en exéuction pour finalement ne donner que le résultat.

Merci
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonsoir,
ne voulant pas faire une formule =si interminable
Il y a peut-être d'autres possibilités que celle à laquelle tu as songé.
Si tu exposais ton problème de départ ?
eric
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Duck
 
Ok, j'ai crée ma table de référence avec les formlues

Le Tier se retrouve dans la colonne A et la formule dans la colonne B. Le mot tableau dans mon texte est uniquement utilisé pour determiné la place ou doivent etre copiées les formules mentiionnées ci-bas

Tier1 formule reliée =(RECHERCHE(I2;{0\8001\12001\15001};{0\0.03\0.04\0.05}))*I2
Tier2 formule reliée =(RECHERCHE(I3;{0\10001\14001\17001};{0\0.03\0.04\0.05}))*I3
Tier3 formule reliée =(RECHERCHE(I4;{0\4001};{0\0.02}))*I4
etc...

Dans mon tableau j'aimerais faire un reherchev en fonction du tier 1/2/3 etc et lorsque dans la colonne A de mon tableau il trouve le tier en question qu'il copie la formule mentionne ci-haut et qu'il calcule cette formule en fonction des parametres indiqués. Donc la ligne relié au I de ma formule devient variable car s'il copie la formule du Tier2 sur la ligne 1028 je veux que la formule soit =(RECHERCHE(I1028;{0\10001\14001\17001};{0\0.03\0.04\0.05}))*I1028 . Le tier recherché se trouvera dans la colonne A de mon tableau

Ayant +/-10 tier dans ma table je me vois mal faire un si avec toutes ces conditions et vu que mon tableau est passablement volumineux je ne veux pas devoir faire la tache manuellement de copier chacune de ces formules aux bons endroits. Il se peut aussi que les tier soient plus nombreux dans le futur et par le fait même mon tableau soit plus gros aussi.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonsoir,

Ben faut une lecture lente pour ton truc...

Si j'ai bien compris et si dans A il y a réellement 1, ou 2, ou ... essaie avec :
=(RECHERCHE(DECALER($I$1;A2;0);{0\8001\12001\15001};{0\0.03\0.04\0.05}))*DECALER($I$1;A2;0)


La ligne 1 parait libre mais si elle ne l'est pas met DECALER($I$2;A2-1;0)

eric
0