Type de fonction ?

bcharef

XLDnaute Accro
Bonjour à toutes et à tous.

J'ai le grand plaisir de vous demander de bien vouloir nous orienter, qaund est-ce que, il faut appliquer une fonction matricielle au lieu d'une fonction normale.

Comptant sur votre aimable collaboration, veuillez agréer, messieurs mes salutations distinguées.

Bcharef.
 
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Type de fonction ?

Bonjour bcharef,

Ce n'est pas très évident à expliquer ce qu'est une formule matricielle.

On peut dire qu'il s'agit d'une formule qui s'applique à une matrice de cellules (plusieurs cellules). Il peut s'agir de cellules réelles (celles d'Excel) ou bien de générer une matrice "virtuelle" comme on peut le faire avec =LIGNE(INDIRECT("1:200")) qui va générer une matrice avec les nombres de 1 à 200. Pour s'en rendre compte, sélectionner la formule matricielle dans la barre de formule puis un petit coup de F9 et on voit alors apparaître la matrice.

C'est en opérant ainsi que j'ai commencé à comprendre un peu le mode de fonctionnement des matricielles.

Cela dit le domaine des matricielles est très vaste et je suis loin d'en avoir exploré toutes les facettes.

Tu peux te rendre par exemple sur le site de Laurent Longre, orfèvre en la matière, qui a une rubrique sur le sujet :

Ce lien n'existe plus

La particularité des formules matricielles, c'est de demander une validation particulière (CTRL + MAJ + ENTREE). A savoir qu'on utilise parfois sans le savoir des fonctions matricielles telles que SOMMEPROD, mais qui ne demande pas la fameuse validation.

Je te laisse aborder le sujet tranquillement en fouillant ici ou là.

Petit à petit, tu te rendras compte de la puissance de ces formules.

Bon WE à toi

@+
 

ngogoisidore

XLDnaute Occasionnel
Re : Type de fonction ?

Bonjour,

Les fonctions matricielles sont, par exemple, utiles pour sélectionner des lignes dans un tableau selon plusieurs critères à la fois. Cela permet, de manière concise, de retrouver des fonctionnalités de base donnée (commande SQL).

Ces fonctionnalités sont aussi accessibles via les fonctions de base de donnée d'Excel DGET, DMAX, DMIN ... Mais celles-ci sont plus lourdes à manipuler et plus limitées. leur avantage est qu'elles sont plus claires et plus dédiées (robustes) à l'accés base de données. Cela dit, il ne faut pas oublier, qu'Excel est un tableur et non un gestionnaire de base de donnée. Dans des cas compliqués, il vaut mieux utiliser Access ou Oracle (à condition de maîtriser un peu).

On peut aussi utiliser les matrices dans Excel, pour faire ...
... du calcul matriciel ! Mais, là encore, même si c'est puissant, ne pas s'attendre à atteindre les performances d'un Matlab.

Egalement : se méfier de ces opérateurs matriciels, car ils sont consommateurs en ressource. En effet, on peut grace à une seule formule contenue dans une seule cellule obtenir un range de valeurs (qui peut avoir de grandes dimensions).
De plus, dans leur utilisation "base de donnée", ils peuvent vite manquer de clareté, avec des formules trop longues, si on n'y prend pas garde.

En résumé, les opérateurs matriciels d'Excel sont en effet trés puissants et je suis loin de les maîtriser parfaitement, mais leur utilisation extensive peut vite dépasser la capacité de notre cher Excel, qui pourtant est susceptible de bien des prouesses ;).
 

bcharef

XLDnaute Accro
Re : Type de fonction ?

Bonsoir Tibo & ngogoisidore,
Bonsoir à toutes et à tous.

J'ai le grand plaisir à vous remercier d'avoir pencher sur mon souci, ainsi qu'à l'astuce F9 et le lien formulés par Tibo; et de vous présenter mes excuses au retard accusé comme élément de réponse et de remerciement par mesure disciplinaire.

Mais, mon problème demeure toujours " quand est ce qu'on doit utiliser la fonction matricielle ?".

Comptant sur votre aimable collaboration, je vous présente mes salutations distinguées.

Bcharef.
 
Dernière édition:

ngogoisidore

XLDnaute Occasionnel
Re : Type de fonction ?

Bonjour bcharef,

Il y a de nombreux cas où on peut utiliser les fonctions matricielles.

J'en ai donné deux exemples dans mon post précédent.

Le problème, c'est que je ne sais pas si ces cas te sont utiles ...

Je ne peux pas faire grand chose de plus que d'être plus précis encore.

- Cas de selections de lignes dans un tableau en fonction de critères multiples :

Imaginons que l'on rentre dans un tableau Excel le carnet d'adresses suivant :

Code:
	A	B	C	D			E
1					
2	[B]Nom[/B]	[B]Prénom[/B]	[B]Tél[/B]	[B]Adresse[/B]			[B]Profession[/B]
3	Dupont	Yves	123	2, rue de colmart	Boulanger
4	Durand	Gilles	234	4, rue du gabon		Opticien
5	Martin	Yves	567	12, rue de chine	Soudeur
6	Obert	Chris	289	2, rue de colmart	Médecin
7	Dupont	Patrice	567	5, rue albert		Fleuriste
8	Durand	Yves	111	7, rue horizon		Boulanger

Et que l'on veuille selectionner toutes les lignes de ce carnet d'adresses qui respectent :

Code:
Prénom        = Yves
Profession    = Boulanger

il suffit de créer le tableau suivant

Code:
	G	H	I	J			K
1		Yves					Boulanger
2	[B]Nom[/B]	[B]Prénom[/B]	[B]Tél[/B]	[B]Adresse[/B]			[B]Profession[/B]
3	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]			[COLOR="Blue"]{X}[/COLOR]
4	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]			[COLOR="Blue"]{X}[/COLOR]
5	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]			[COLOR="Blue"]{X}[/COLOR]
6	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]			[COLOR="Blue"]{X}[/COLOR]
7	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]			[COLOR="Blue"]{X}[/COLOR]
8	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]	[COLOR="Blue"]{X}[/COLOR]			[COLOR="Blue"]{X}[/COLOR]


Code:
avec X : [I][B]IF(((A3:A8=G1)+(G1=""))*((B3:B8=H1)+(H1=""))*((C3:C8=I1)+(I1=""))*((D3:D8=J1)+(J1=""))*((E3:E8=K1)+(K1=""));A3:E8;"")[/B][/I]

Pour entrer cette formule "X", selectionner la zone G3:K8, entrer la formule = IF(..., et appuyer sur CTRL+SHIFT+ENTER.

Le résulat est le suivant :

Code:
	G	H	I	J			K
1		Yves					Boulanger
2	[B]Nom[/B]	[B]Prénom[/B]	[B]Tél[/B]	[B]Adresse[/B]			[B]Profession[/B]
3	Dupont	Yves	123	2, rue de colmart	Boulanger
4					
5					
6					
7					
8	Durand	Yves	111	7, rue horizon		Boulanger

J'ai attaché le fichier correspondant à l'exemple que j'ai décrit plus haut.

Je ne sais pas bien si j'ai répondu à la question, mais là, j'ai vraiment fait ce que j'ai pu ;).
 

Pièces jointes

  • Ex F. Matricielles.zip
    2.2 KB · Affichages: 37

bcharef

XLDnaute Accro
Re : Type de fonction ?

Bonjour ngogoisidore,
Bonjour à toutes et à tous.

Avant de faire la lecture de votre réponse, j'ai le grand plaisir de vous remercier pour le temps que vous m'aviez accordé.

Merci encore une fois.

Salutations distinguées.

Bcharef.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 095
Messages
2 085 252
Membres
102 837
dernier inscrit
CRETE