Excel Produit matriciel (produits de produit)

Résolu/Fermé
kilstir Messages postés 2 Date d'inscription jeudi 4 mars 2010 Statut Membre Dernière intervention 4 mars 2010 - 4 mars 2010 à 11:29
kilstir Messages postés 2 Date d'inscription jeudi 4 mars 2010 Statut Membre Dernière intervention 4 mars 2010 - 4 mars 2010 à 11:41
Bonjour,

Savez vous s'il existe une fontion qui permettre de multiplier entre eux tous les chiffres d'une plage (exemple : sur la plage A1:A3 ==> A1 x A2 x A3) ?

Cela m'aiderait pour un fichier sur lequel je travaille.
Pour rentrer dans le détail.

Le fichier qui me fourni
- en lignes : une liste d'attributs (0 : attribut absent, 1 : attribut présent)
- en colonnes : 20 combinaisons possibles de ces caractéristiques.

Mon objectif est d'essayer de déterminer si une combinaison est présente en doublon.

Exemple :

.....A..............B..........C..........D
1...Petit..........1..........0..........0
2...Grand........0..........1..........1
3...Rouge.......1..........0..........0
4...Jaune........0..........1..........1

On voit ici que C = D (Grand / Jaune)

Mon fichier travaille sur 50 attributs possibles et doit pouvoir s'adapter à beaucoup de contextes.

Mon idée a été d'attribuer à chaque attribut un nombre premier.
Ensuite, je multiplie l'indicateur de présence (0 ou 1) par le nombre premier. Ensuite, pour chaque combinaison, je multiplie chaque résultat unitaire entre eux (tous ceux différents de 0).

La fonction SOMMEPROD permet d'additionner une liste de nombre eux mêmes issus de produits.
Je cherche une fonction qui permettrait de multiplier entre eux une liste de nombres eux mêmes issus de produit (avec la difficulté supplémentaire d'écarter les 0, mais ça je peux m'en passer en transformant les 0 en 1).

Pour illustration, si je reprend mon exemple :

.....A..............B..........C..........D..........E (affectation nombre premier)
1...Petit..........1..........0..........0..........2
2...Grand........0..........1..........1..........3
3...Rouge.......1..........0..........0...........5
4...Jaune........0..........1..........1...........7
5...Valeur.....10.........21........21

La Valeur (de la combinaison) B est = (1 x 2) x (1 x 5) = 10
C et D ont la même valeur, ils sont identiques.
Je peux effacer l'incidence des 0 (0 x 3 = 0, ce qui met à 0 l'ensemble de la formule) en faisant des reports dans d'autres colonnes :

.....A..............B..........C..........D..........E..........F..........G..........H
1...Petit..........1..........0..........0..........2...........2..........1..........1
2...Grand........0..........1..........1..........3...........1..........3..........3
3...Rouge.......1..........0..........0...........5..........5...........1..........1
4...Jaune........0..........1..........1...........7..........1...........7..........7
5...Valeur.....10.........21........21.....................10..........21........21

Les colonnes F, G et H se basent sur B, C et D :
Une formule Si : Si B1 = 0, alors la cellule = 1, sinon cellule = B1 x F1

Du coup, il me suffit pour connaître la valeur de la combinaison d'utiliser une fonction qui permettent : "de multiplier entre eux tous les chiffres d'une plage".

Merci
A voir également:

2 réponses

smartway14 Messages postés 822 Date d'inscription mercredi 15 octobre 2008 Statut Membre Dernière intervention 8 octobre 2011 185
4 mars 2010 à 11:34
bonjour;
pour le produit matriciel il ya la fonction SOMMPROD()
0
kilstir Messages postés 2 Date d'inscription jeudi 4 mars 2010 Statut Membre Dernière intervention 4 mars 2010
4 mars 2010 à 11:41
Je suis trop concentré sur mon sujet pour voir le plus simple. La fonction Produit sur la colonne solutionne mon pb (certes pour cela je doublonne mes colonnes et je rajoute un conditionnement, mais on a rien sans rien).

Merci smartway14 pour ta réponse.
0