L'informatique à votre portée
L'informatique prêt-à-porter

Faites appel à moi

pour vos formations chez vous pour les dpts 59, 62, 80, 81, 31, 82 et 11 ou à distance

pour vos développements bureautiques (tout Office)

Communauté partenaire Microsoft

Les formules matricielles dans Excel 2010, 2007 et 2003

Qu'est-ce

Haut

C'est une formule qui s'effectue sur un ou plusieurs tableaux, elle renvoie soit un nouveau tableau, soit un seul résultat. Un tableau (ou matrice) peut-être une suite de données ou une plage de cellules.

matrice de données : vous devez mettre entre crochet cette matrice et séparé chaque données par un point, les données de type texte doivent être mis entre guillemets. Exemple :

  • {1,5.2,3.3.4.5} qui comprend les valeurs 1,5 et 2,3 et 3 et 4 et 5
  • {"Cathy"."Philippe"}

En fait dans Excel, nous utiliserons essentiellement des formules sur des plages de cellules.

Pour comprendre le principe d'une tel formule, nous prendrons un exemple tout simple : 1 plage de cellules est égal au produit de 2 autres :

   

Habituellement, vous effectuez en D2 : =B2*C2, puis vous recopier la formule sur la plage D3:D10. La formule matricielle va calculer instantanément toutes les valeurs de la plage D2:D10. Pour l'établir :

  • Sélectionnez la plage D2:D10
  • tapez = sur votre clavier
  • sélectionnez la plage B2:B10
  • tapez *
  • sélectionnez la plage C2:C10
  • Appuyez sur Ctrl+Maj+Entrée (c'est cette combinaison de touche qui indique que la formule est matricielle)
  • Vous constatez alors que la formule s'écrit {=B2:B10*C2:C10}.

Qu'a donc fait cette formule matricielle : elle a appliqué la formule sur chaque ligne et renvoyé le résultat sous forme d'un tableau, c'est pour cela que vous deviez au préalable sélectionnez la plage D2:D10 :

 =B2*C2
 =B3*C3
 =B4*C4
 =B5*C5
 =B6*C6
 =B7*C7
 =B8*C8
 =B9*C9
 =B10*C10

Une formule matricielle peut également ne renvoyer qu'une seule valeur. Reprenons notre exemple : nous pouvons établir directement l'équivalent de la somme de la plage D2:D10 :

En C11, tapez la formule =SOMME(B2:B10*C2:C10), puis Ctrl+Maj+Entrée

Cette formule effectue d'abord le travail sur les matrices comme indiquées ci-dessus. Elle renvoie donc un tableau de valeurs contenant le produit de chaque ligne.
Ensuite la fonction SOMME effectue la somme de ces données.

Vous pouvez utiliser ainsi toutes fonctions qui requière 1 ou plusieurs matrices dans ses paramètres ou une suite de données.

   Impression Impression

Quelques formules

Haut

Compter les cellules contenant du texte

La formule est : {=SOMME(SI(ESTTEXTE(A1:C11);1;0))}
Celle-ci établit d'abord un SI sur chaque cellule de la plage, si la cellule contient du texte, ce SI renvoit 1 sinon 0. La somme de ces 1 donne donc le nombre de cellules contenant du texte.

Moyenne

La moyenne standard : =MOYENNE(B2:B10) tient compte des valeurs égales à 0. Si vous ne voulez pas en tenir compte, il suffit d'établir la formule matricielle suivante :
{=MOYENNE(SI(B2:B10<>0;B2:B10))}
Le SI renvoit uniquement les données si la cellule de la plage B2:B10 est différente de 0. La moyenne ne se fait donc que sur les valeurs non nulles.

Compter sur plusieurs conditions

Vous connaissez déjà la fonction NB.SI, celle-ci ne permet qu'une seule condition. Ici nous allons calculer le nombre de cellules dont l'article est A et la quantité est 2 :
{=SOMME(SI(A2:A10="A";1;0)*SI(B2:B10=2;1;0))}
la formule SI(A2:A10="A";1;0) renvoie 1 lorsque la cellule de A2:A10 est égale à "A".
la formule SI(B2:B10=2;1;0) renvoie 1 lorsque la cellule de B2:B10 est égale à 2.

Nous pourrions simplifier cette formule ainsi :
{=SOMME((A2:A10="A")*(B2:B10=2))}
(A2:A10="A") renvoie VRAI si le contenu de la cellule de A2:A10 si celle-ci est égale à "A", FAUX dans le cas contraire.
(B2:B10=2) renvoie VRAI si le contenu de la cellule de B2:B10 si celle-ci est égale à 2, FAUX dans le cas contraire
Le tableau ci-dessous vous explique comment se comporte le produit entre des valeurs VRAI et FAUX dans Excel.

VRAI * VRAI = 1
VRAI * FAUX = 0
FAUX * VRAI = 0
FAUX * FAUX = 0

Sommer sur plusieurs conditions

Dans notre 1er exemple nous établirons la somme des PU pour les articles A dont la quantité est 2 :
{=SOMME((A2:A10="A")*(B2:B10=2)*C2:C10) }
Cette formule reprend celle expliquée ci-dessus, mais nous multiplions le résultat par la valeur de la cellule située dans la colonne C. Analysons chaque partie de la formule :

A2:A10="A" B2:B10=2 C2:C10
(A2:A10="A")*(B2:B10=2)*C2:C10)
VRAI VRAI 10,00 ? 10,00 ?
FAUX VRAI 25,00 ? 0,00 ?
FAUX FAUX 15,00 ? 0,00 ?
VRAI VRAI 22,00 ? 22,00 ?
FAUX FAUX 25,00 ? 0,00 ?
FAUX VRAI 27,00 ? 0,00 ?
VRAI FAUX 30,00 ? 0,00 ?
FAUX FAUX 15,00 ? 0,00 ?
VRAI FAUX 12,00 ? 0,00 ?
SOMME 32,00 ?

Dans notre 1er exemple nous établirons le total des articles A dont la quantité est 2 :
{=SOMME((A2:A10="A")*(B2:B10=2)*C2:C10*B2:B10) }
Le tableau suivant vous indique comment se comporte la formule

A2:A10="A" B2:B10=2 C2:C10
B2:B10
(A2:A10="A")*(B2:B10=2)*C2:C10*B2:B10)
VRAI VRAI 10,00 ? 2 20,00 ?
FAUX VRAI 25,00 ? 2 0,00 ?
FAUX FAUX 15,00 ? 1 0,00 ?
VRAI VRAI 22,00 ? 2 44,00 ?
FAUX FAUX 25,00 ? 3 0,00 ?
FAUX VRAI 27,00 ? 2 0,00 ?
VRAI FAUX 30,00 ? 3 0,00 ?
FAUX FAUX 15,00 ? 0 0,00 ?
VRAI FAUX 12,00 ? 1 0,00 ?
SOMME 64,00 ?
   Impression Impression