Fonction INDEX ; Equiv et CUMUL

Bonjour à tous.

Tout d'abord je me présente. Je m'appelle Baptiste, je suis apprenti controlleur de gestion dans une usine industrielle et cherche à améliorer mes compétences Excel.

Mon problème est le suivant :

J'ai un fichier Excel avec 4 onglet :

Le 1er : Nommé "2010" reprend la répartition des couts de maintenace sur toute l'anné par "cost centers".

Pour chaque mois, nous avons donc une colone réel, une budget et une écart.

Le 2e : Nommé "2011" est le même que le premier mais pour l'année encours.

Le 3e : Nommé "Mensualisation" utilise une fonction Index et Equiv pour que quand on change le mois voulu, s'affiche l'année 2010 (3colonnes), l'année 2011 (3colonnes) et l'écart (3colonnes)

Jusque là : Pas de problème ....

C'est sur mon 4e onglet que je bloque ...

Je voudrais faire sur le même modèle que dans l'onglet "Mensualisation" mais en Cumulé (jusqu'au mois indiqué en A1)

J'entre donc le mois voulu en A1. La colonne A reprend tous mes cost centers et 3 colonnes pour "accumulated 2010" ; 3 pour "Accumulated 2011" et 3 pour les écarts.

J'ai essayé en utilisant cette formule :

=SOMME.SI(INDEX('2010'!E4:AN4;EQUIV(Accum!$A$2;'2010'!E$2:AN$2;0));DROITE(INDEX('2010'!E$2:AN$2;1;EQUIV(Accum!$A$2;'2010'!E$2:AN$2;0));1)=1;'2010'!E4:AN4) 

Mais bon comme vous vous en doutez si je poste ce message .... ça ne marche pas !!

J'avais si non pensé me faire sur un autre onglet nommé "Mois" mettre la liste des mois de janvier à décembre sur une colone et faire en sorte qu'en fonction du mois rentré en A1 de l'onglet "Accumulated", ma fonction dise : Tu m'additionne tous les chiffres de la ligne 1(1er cost center) pour les colonnes de Janvier à Mars par exemple (A1).

Ha oui au fait : Pour l'onglet "Mensu", vu que j'ai 3 colonnes et que l'index.equiv fonctionne pour 1 colonne (enfin moi je ne sais m'en servir que comme ça) j'ai groupé les cellules A2, A3, A4 qui ne font que reprendre la A1 mais en rajoutant 1 a chaque fois (pour différencier les colonnes; j'ai donc remis cette dénomination des mois au dessus de chaque colonnes) En gros : Pour le mois de janvier, la colonne 1 s'appelle Janvier 1 , la 2e Janvier 2 et la troisieme Janvier 3 (bien sur tout ça étant caché).

Enfin voila, je sais pas si vous avez tout compris mais je ne veux pas poster le fichier (je ne dois pas bien avoir le droit ...) meme sans les données dedans.

Voili voilou lol

Cordialement

Perrer

Bonjour et bienvenue

Trop de lecture ! Ça ne donne pas envie d'aller jusqu'au bout.

Merci de joindre ton fichier avec les explications de ce que tu veux obtenir à l'intérieur.

Comment Joindre Un Fichier

Amicalement

Nad

Bonjour.

Je me doutais bien que la longueur de mon post allait en décourager plus d'un.

Je vous envoi donc un fichier reprenant la trame souhaitée.

Le problème est pour l'onglet "accum".

Cordialement

95fichier.zip (17.67 Ko)

Bonjour

un essai

Cordialement

142fichier.zip (17.08 Ko)

Re, bonjour

Un second essai

cordialement

206fichier-v2.zip (17.36 Ko)

woow merci Amadéus ! Rapide et efficace

Je décortiquerais ces formules dès que possible.

Bonjour,

Amadeus si tu passes par la, je viens juste de tester ta formule sur mon fichier (d'ailleur, même problème sur le tien).

Tout fonctionne correctement jusqu'au mois d'aout.

Pour les mois d'aout et septembre aucune valeur ne ressort ( #REF) puis d'octobre à décembre les valeurs ne sont plus les bonnes).

Sachant que j'ai décortiqué ta formule sans grand résultat, je n'arrive pas à comprendre ou peur se trouver l'erreur.

Cordialement

Perrer

Bonjour

J'ai changé les 2 formules

Cordialement

196fichier-v3.zip (17.30 Ko)

Merci, ça m'a l'air tout bon cette fois !

Pourrais-tu m'expliquer un peu ta formule ?

Bonjour

La formule en B7 de la feuille Accum

=SOMMEPROD((DECALER(INDIRECT(DROITE($B$1;4)&"!E3");;;;(MOIS("1/"&$A$1)*3))=B$6)*(DECALER(INDIRECT(DROITE($B$1;4)&"!E"&($L7));;;;(MOIS("1/"&$A$1)*3))))

est composée de 2 matrices à sommer

=SOMMEPROD((Matrice1)*(Matrice2))

Matrice1 est repréntée par

DECALER(INDIRECT(DROITE($B$1;4)&"!E3");;;;(MOIS("1/"&$A$1)*3))=B$6

La Formule DECALER (Aide d'Excel)

DECALER(réf;lignes;colonnes;hauteur;largeur)

réf est représentée par

INDIRECT(DROITE($B$1;4)&"!E3")
=INDIRECT(2010&"!E3")
=2010!E3

largeur est représentée par

(MOIS("1/"&$A$1)*3))
=MOIS("1/"$A1)

Si A1 contient Août

=MOIS("1/"&A1)=8

8*3=24

Donc

DECALER(INDIRECT(DROITE($B$1;4)&"!E3");;;;(MOIS("1/"&$A$1)*3))

représente la plage dont ma première cellule est 2010!A3 et d'une largeur de 24 colonnes

soit la plage 2010!E3:AB3

Matrice2 est représentée par

DECALER(INDIRECT(DROITE($B$1;4)&"!E"&($L7));;;;(MOIS("1/"&$A$1)*3)))

L7 est égal à 4

Donc, sur le même principe qu'expmliqué ci-dessus

cette formule représente la plage 2010!E4:AB4

La formule en B7 traduite est en définitive

=SOMMEPROD((2010!E3:AB3="External")*(2010!E4:AB4))

Tu peux visualiser tout cela en sélectionnant B7 et en utilisant l'Audit de formule (Menu Outils)

Cordialement

Merci beaucoup, je vais étudier ça sous peu.

Rechercher des sujets similaires à "fonction index equiv cumul"