Formule matricielle - Microsoft 365
F60lebaladinverni
Messages postés
128
Date d'inscription
Statut
Membre
Dernière intervention
-
Vaucluse Messages postés 26496 Date d'inscription Statut Contributeur Dernière intervention -
Vaucluse Messages postés 26496 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je bloque sur une formule matricielle Microsoft 365.
Voici un fichier exemple pour illustrer mes propos :
https://www.cjoint.com/c/KEzj3CEbFGL
Dans l'onglet "Feuil1", j'ai un tableau de Noms.
Dans l'onglet 'Feuil2", je recopie ma liste de noms dans la colonne A via cette formule
Cela concerne les cellules jaunes.
Ma problématique est la suivante : calculer un avancement en fonction du nombre d'étapes validées. Pour cela, une formule de ce style fonctionne :
Elle correspond aux cellules oranges.
Le seul problème, c'est que cette formule ne s'étend pas automatiquement jusqu'en bas de mon tableau. Je dois le faire manuellement et j'aimerais l'éviter.
j'ai donc testé la formule suivante dans les cellules vertes
Cette formule s'étend bien jusqu'en bas du tableau, mais elle recopie sur chaque cellule le résultat obtenu à la 1ere ligne...
Je ne vois pas quelle solution je peux mettre.
J'espère avoir été assez clair
Cordialement
Je bloque sur une formule matricielle Microsoft 365.
Voici un fichier exemple pour illustrer mes propos :
https://www.cjoint.com/c/KEzj3CEbFGL
Dans l'onglet "Feuil1", j'ai un tableau de Noms.
Dans l'onglet 'Feuil2", je recopie ma liste de noms dans la colonne A via cette formule
=Tableau1[nom]
Cela concerne les cellules jaunes.
Ma problématique est la suivante : calculer un avancement en fonction du nombre d'étapes validées. Pour cela, une formule de ce style fonctionne :
=NBVAL(C2:E2)/NBVAL($C$1:$E$1)
Elle correspond aux cellules oranges.
Le seul problème, c'est que cette formule ne s'étend pas automatiquement jusqu'en bas de mon tableau. Je dois le faire manuellement et j'aimerais l'éviter.
j'ai donc testé la formule suivante dans les cellules vertes
=SI(A9#<>"";NBVAL(C9:E9)/NBVAL($C$1:$E$1);"")
Cette formule s'étend bien jusqu'en bas du tableau, mais elle recopie sur chaque cellule le résultat obtenu à la 1ere ligne...
Je ne vois pas quelle solution je peux mettre.
J'espère avoir été assez clair
Cordialement
A voir également:
- Formule matricielle - Microsoft 365
- Microsoft office - Guide
- Microsoft money - Télécharger - Comptabilité & Facturation
- Cette technique secrète permet d'avoir Windows et Microsoft Office gratuitement et à vie - Accueil - Bureautique
- Microsoft 365 basic - Accueil - Microsoft Office
- Formule si et - Guide
2 réponses
Bonjour
on ne sait pas si le fichier soumis représente exactement votre problème, mais si c'est le cas:
1°) pas utile d'avoir dans la liste de référence des noms en feuille 1 un tableau formaté , une simple liste suffit
2°) mais même en gardant ce type, la feuille2 ne nécessite pas de formule matricielle pour assurer les résultats cherchés
3°) donc en liste colonne A de la feuille 2 il suffit d'écrire:
=Tableau1[@nom] sans les accolades
4°) on peut ensuite écrire pour un champ éventuel de C à Z, en B:
=NB.SI(C2:Z2;"x")/NB.SI($C$1:$Z$1;"<>")
crdlmnt
on ne sait pas si le fichier soumis représente exactement votre problème, mais si c'est le cas:
1°) pas utile d'avoir dans la liste de référence des noms en feuille 1 un tableau formaté , une simple liste suffit
2°) mais même en gardant ce type, la feuille2 ne nécessite pas de formule matricielle pour assurer les résultats cherchés
3°) donc en liste colonne A de la feuille 2 il suffit d'écrire:
=Tableau1[@nom] sans les accolades
4°) on peut ensuite écrire pour un champ éventuel de C à Z, en B:
=NB.SI(C2:Z2;"x")/NB.SI($C$1:$Z$1;"<>")
crdlmnt
Re
1° pour la formule , on peut remplacer "x" par "<>" dans le premier NBSI, résultat identique quelque soit la valeur des cellules
2° pour incrémenter les formules automatiquement, je ne vois que mettre l'édition sous forme de tableau et tirer la formule en A qui renvoie le nom de la feuille 1 sur la hauteur utile. Après les formules en B, non matricielles, se placent toutes seules sur la hauteur remplie de A
crdlmnt
1° pour la formule , on peut remplacer "x" par "<>" dans le premier NBSI, résultat identique quelque soit la valeur des cellules
2° pour incrémenter les formules automatiquement, je ne vois que mettre l'édition sous forme de tableau et tirer la formule en A qui renvoie le nom de la feuille 1 sur la hauteur utile. Après les formules en B, non matricielles, se placent toutes seules sur la hauteur remplie de A
crdlmnt
J'apporte alors quelques éléments de précisions :
- Il n'y a pas forcément d'ordre dans les étapes, disons que c'est plutôt une check-list et tu peux remplir le tableau dans le désordre.
- J'ai mis des "x" mais dans l'absolu, on peut y inscrire n'importe quoi, c'est pour ça que je pense qu'un NBVAL n'est pas si mal.
Pour ce qui est des formules :
- pour la colonne A
Ecrire =Tableau1[nom] en A2 suffit à étendre la formule de A2 à A5 directement. La formule se mettra à jour jusque A6 automatiquement si j'ajoute un nom au tableau du 1er onglet.
- pour la colonne B
ta formule est bien, mais si je l'écris en B2, je dois la tirer manuellement jusque B5, et si je rajoute un nom dans le tableau de mon 1er onglet, je ne dois pas oublier de tirer la formule en B6 à la main. Et c'est la mon problème.
J'ajoute que les formules utilisées ne sont disponibles qu'avec un compte Microsoft 365.
Cordialement