Matrice et Decalage

Bonjour,

J'essaie de faire la somme des colonnes d'un tableau mais dans mon cas, les colonnes sont dépendantes d'un décalage qui s'applique sur chaque ligne. J'ai essayé une combinaison des Matrices et de la fonction Décalage pour obtenir la formule suivante:

{ =SOMME( ($B2:$B4="x") * (SI(COLONNE(E2:E4)<=$C2:$C4+3;0; DECALER(E2:E4;0;-$C2:$C4) ))) }

Mais je n'arrive pas à obtenir un résultat correct.

Pourtant, la fonction décalage fonctionne de façon isolée

de même, la somme des termes de la matrice fonctionne de façon isolée.

J'ai également essayé en utilisant la fonction INDEX au lieu de la fonction DECALAGE avec le même résultat.

Est-ce que quelqu'un à une idée pour me débloquer ?

Merci d'avance

-- 26 Mar 2011, 14:17 --

En fait dans la fonction DECALAGE, la valeur de la colonne est toujours la même, c'est celle de la première ligne...

15classeur.xls (15.50 Ko)

Bonjour,

Je n'ai pas Excel sous la main pour tester mais si j'ai bien compris ce que tu veux (voir colorisation) les résultats m'ont l'air correct avec LibreOffice.

decalage

Bonjour Ooiste,

C'est exactement ce que je voudrais faire. Comment se fait-il que ça ne marche pas sous Excel 2003 ?

stchalon

Tu dis que DECALER seul fonctionne, as-tu le même résultat que moi en ouvrant le classeur ci-dessous :

17classeurtest.xls (10.50 Ko)
decalage2

Les cellules E15, E16, E17 puis E22, E23 et E24 sont en erreur "#VALEUR!' lorsque j'ouvre le fichier

Si je recopie la formule en colonne G (fichier attaché), j'obtiens toujours la valeur 2 contrairement à ton cas.

Les cellules F15, F16, F17 puis F22, F23 et F24 ont la même valeur que dans ton exemple

13classeurtest-e2.xls (17.50 Ko)

Ce qui est bizarre, c'est que malgré le fait que DECALER ne renvoie pas la bonne valeur, SI(...DECALER renvoie le bon résultat quand tu ouvres le classeur.

A part le fait de changer les arguments de decaler en incluant la longueur de la plage, je ne vois pas.

Je vais laisser la main à quelqu'un qui utilise Excel 2003.

Sorry

En tous cas, super merci de t'être intéressé à mon problème

-- 26 Mar 2011, 15:29 --

Je viens d'essayer avec Microsoft Office 2007, j'ai le même résultat incorrect alors que LibreOffice se comporte comme souhaité. Tout se passe comme si la valeur du champ colonne ne peut pas provenir d'une matrice.

-- 27 Mar 2011, 13:41 --

J'ai imaginé un contournement du problème mais pas très élégant puisqu'il oblige à dupliquer la matrice.

La fonction DECALAGE peut alors utiliser une valeur fixe au lieu d'un vecteur

18classeur.xls (18.50 Ko)
Rechercher des sujets similaires à "matrice decalage"