Consolider feuilles de calcul + operation [Résolu/Fermé]

Signaler
-
 Arnaud -
Bonjour,

Je souhaite consolider (additionner) 6 feuilles excel identiques tout en applicant une formule de multiplication condionnelle.
Je m'explique. Je souhaite additionner des feuilles de calcul qui sont chacunes dans une certaine devise. Je dois donc les mettre chacune en Euros.
Pour eviter de dupliquer chaque feuille de calcul en euro et de les sommer par la suite (long et fastidieux), j'aimerais directement utiliser la formule SUM(Feuille1:Feuille6!A5) mais en y ajoutant une multiplication conditionnelle.
J'aimerais donc ajouter chaque cellule A5 de chaque feuille prealablement multipliee par le taux de change adequat (via la fonction vlookup et les taux stockes dans une autre feuille).

Notez que je souhaite utiliser une formule et pas une macro pour plus de flexibilite et de facilite de revision.
Merci beaucoup pour votre aide
Arnaud

2 réponses

Messages postés
2966
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
871
Salut le Forum

Inscrire le facteur de correction en cellule A1 des différentes feuilles
=SOMMEPROD(N(INDIRECT("'Feuille"&LIGNE(1:6)&"'!A5"));N(INDIRECT("'Feuille"&LIGNE(1:6)&"'!A1")))

Mytå
Merci de donner suite à votre question, nous ne sommes pas des robots...
« Si le déboguage est l'art d'enlever les bogues, alors la programmation doit être l'art de les créer. »
Merci beaucoup Myta,
Cette formule n'est cependant pas recopiable pour aussi ajouter entre elles les autres cellules de mon tableau. Pour chaque cellule, je dois changer manuellement: "A5" en A6, A7 etc...
Une solution?
J'ai trouve comment la recopier, il faut jouer un peu avec les & et les "" et l'astuce incroyable de la fonction LEFT(ADDRESS(1,COLUMN(),4),LEN(ADDRESS(1,COLUMN(),4))-1) qui renvoie la lettre de la colonne active.

Pour ceux que ca interesse, voici la formule qui peut etre recopiee pour un taux de change entre en cellule A1 de chaque feuille
=SUMPRODUCT(N(INDIRECT("Feuille"&ROW($1:$6)&"!"&LEFT(ADDRESS(1,COLUMN(),4),LEN(ADDRESS(1,COLUMN(),4))-1)&ROW(5:5))),N(INDIRECT("'Feuille"&ROW($1:$6)&"'!$A$1")))

Merci Myta de m'avoir fait decouvrir INDIRECT!
Arnaud