Transformation en formule matricielle
Résolu
fbrcrsi
Messages postés
23
Statut
Membre
-
fbrcrsi Messages postés 23 Statut Membre -
fbrcrsi Messages postés 23 Statut Membre -
Bonjour,
Pour ma culture personnelle et pour progresser j'aimerais comprendre comment passer a une formule matricielle.
Fichier exemple : https://www.cjoint.com/c/HBeiWfPzsQ4
Dans la colonne Evolution je calcul le pourcentage d'évolution d'un chiffre pour savoir si je suis dans mon objectif.
Le calcul doit se faire sur la meme période.
Ma première ligne contiens la formule suivante :
=SI([@CA2017]=0;"";(SOMME($B$2:B2)-SOMME($C$2:C2))/SOMME($C$2:C2))
la deuxième ligne
=SI([@CA2017]=0;"";(SOMME($B$2:B3)-SOMME($C$2:C3))/SOMME($C$2:C3))
la troisième
=SI([@CA2017]=0;"";(SOMME($B$2:B4)-SOMME($C$2:C4))/SOMME($C$2:C4))
etc.
Est-il possible de transformer cette formule en formule matricielle ?
Merci
Pour ma culture personnelle et pour progresser j'aimerais comprendre comment passer a une formule matricielle.
Fichier exemple : https://www.cjoint.com/c/HBeiWfPzsQ4
Dans la colonne Evolution je calcul le pourcentage d'évolution d'un chiffre pour savoir si je suis dans mon objectif.
Le calcul doit se faire sur la meme période.
Ma première ligne contiens la formule suivante :
=SI([@CA2017]=0;"";(SOMME($B$2:B2)-SOMME($C$2:C2))/SOMME($C$2:C2))
la deuxième ligne
=SI([@CA2017]=0;"";(SOMME($B$2:B3)-SOMME($C$2:C3))/SOMME($C$2:C3))
la troisième
=SI([@CA2017]=0;"";(SOMME($B$2:B4)-SOMME($C$2:C4))/SOMME($C$2:C4))
etc.
Est-il possible de transformer cette formule en formule matricielle ?
Merci
1 réponse
-
Bonjour
quel serait le but du matriciel, que vous lez vous d'autre que ce que donne votre formule?
à vous lire
crdlmnt
-
-
Pour entrer une formule matricielle:
entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées
la formule s'affiche automatiquement entre accolades dans la barre de formule
Notez que ce type de formule est assez gourmand en capacité et en temps de réaction, et qu'il vaut mieux limiter les champs à la hauteur utile (avec N° de lignes, pas d'adresse type A:A etc..)
Et pour info si utile:
vous avez un code semi-matriciel, avec une entrée simple: SOMMEPROD, c'est un peu plus léger, pour compter selon une série de condition:
=SOMMEPROD((champ1=condition1)*(champ2=condition2)*(champ trois=condition3)*(ETC)*(ETC))
principe: compte 1 à chaque item condition, multiplie les items et donc renvoie 0 ou 1 en fin d'analyse
et pour sommer un champ selon ces conditions:
=SOMMEPROD((champ1=condition1)*(champ2=condition2)*(champ trois=condition3)*(ETC)*(ETC)*(champ à sommer))
fonctionne aussi bien sur avec > < MOIS, ANNEE, etc//
crdlmnt -
-
A vous de voir, là je ne comprend pas ce que vous voulez faire, vu que de toutes façons, vous avez une colonne par année!!
mais par exemple si vous avez une feuille:- de ligne 2 à ligne 1000
- avec en A les dates (jour) des "affaires" même sur plusieurs années (exemple 2015,2016,2017)
- en B le nom des clients pour chaque affaire
- en C les montants
cette formule pour calculer le CA de janvier 2016 par client
=SOMMEPROD((AANNEE(A1:A1000)=2016)*(MOIS(A2:A1000)=1)*(B2:B1000="client")*(C2:C1000))
crdlmnt -
-