Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Tableau double entree

T

Thibault

Guest
Bonjour,

Je veux tout simplement recuperer une valeur d'un tableau à double entrée en precisant 2 clefs (ligne et colonne). Ces clefs etant des chaines de caracteres.
Exemple bateau Tableau de notes d'une classe d'eleves, avec en ligne les noms des eleves et en colonne les differentes matieres.

francais maths Geographie ...
Dupont 15 10 12
Martin 10 etc ...
Durand
...

Je voudrais une fonction qui renvoie la note d'un eleve pour une matiere donnée.

J'au une solution relativement complexe avec une combinaison de recherchev et index, mais qui impose de trier les clefs. Je cheche une solution plus simple et plus stable.

Merci de votre aide.
 
C

Celeda

Guest
Bonsoir,

Une option Tcd : bouger la matière selon le choix.

Celeda
 

Pièces jointes

  • Eleves.zip
    6.7 KB · Affichages: 68
  • Eleves.zip
    6.7 KB · Affichages: 72
  • Eleves.zip
    6.7 KB · Affichages: 70
A

andré

Guest
Salut,

Autre variante :

Nommer les colonnes : français, math, géographie
et les lignes : Dupont, Martin, Durand

La formule : =(math Martin) donnera le nombre inscrit au croissement de ces deux noms.
Ne pas oublier l'espace entre les deux noms.

J'ai esayé d'appliquer ce principe avec deux listes de validation, mais cela n'a pas l'air de fonctionner.
Je ne sais pas pourquoi, mais ce serait me "top".

Ândré.
 
A

andré

Guest
Resalut,

Mais si cela marche !

Avec la formule : =(INDIRECT(G1) INDIRECT(H1))
G1 et H1 étant les cellules contenant le choix des listes de validation.

Ne pas oublier l'espace au millieu de la formule !
Ândré.
 
A

andré

Guest
Salut Monique,

Savais-tu que la formule : =(C1:C3 B33) te renvoies la valeur contenue dans la cellule à l'intersection des lignes et des colonnes précitées ?
N'oublie pas l'espace entre les deux plages.

Ândré.
 
A

andré

Guest
Resalut Monique,

Il ne faut pas de courage !

Exemple : si tes noms sont en colonne A, tu sélectionnes la ligne, puis Insertion / Nom / Définir / OK
Remarque au passage qu'Excel te propose et le bon nom et la bonne plage, il n'y a aucune manipulation à faire !.

Donc en enregistrant une petite macro, il te suffit de sélectionner la ligne et d'appuyer sur un petit bouton de macro.
Encore mieux (mais je ne sais pas le faire) si dans ta macro tu insères une boucle qui commence en A2 et qui s'arrête à la première cellule vide de la colonne A, le tout est automatique.

Idem pour les colonnes.

Plus simple, tu meurs.
Et avec les deux listes de validation, cela devient un vrai petit bijou.

Ândré.
 
T

Thibault

Guest
Merci de vos reponses.

J'ai retenu la formule de monique à base d'Index et d'equiv.

Cependant Je trouve qu'il manque une fonctionalité "toute faite" pour ce besoin. Quelque chose du style on crée une plage nommée de la matrice de valeurs et hop "=valeur_matrice(nom_matrice,clef1,clef2)"

En VB ca doit se faire.

Merci encore.
 
M

Monique

Guest
Re,

Si tu donnes un nom à tes plages de cellules, la formule aura un air plus sympa.
La ligne des matières = Hor (horizontal)
La colonne des noms = Vert (vertical)
Le tableau entier = table
=INDEX(table;EQUIV(B17;Vert;0);EQUIV(B18;Hor;0))
Tu peux aussi nommer B17 et B18, les 2 choix de nom et de matière.
 
T

Thibault

Guest
Monique,

On n'est pas loin, encore un petit effort !!!
Plutot que de gerer 3 plages, peut on à partir de la plage "table" extraire la premiere ligne et la premiere colonne ? Et avoir ainsi qu'une seule table à gerer ?

Je vais avoir en effet plusieurs tables à gerer qui vont souvent evoluer en taille (des abaques), et par une population pas forcement experimentée. D'où mon interet pour une solution simple et fiable.

Salutations.
 
M

Monique

Guest
Re,

Pas plus simple, au contraire, mais (une fois que tout est fini), on ne s'occupe plus que de choisir, par 3 listes déroulantes, la classe, puis l'élève et la matière.
Chaque classe a son tableau, mais un autre tableau se met à jour dans la feuille où le choix est effectué.
Au final, tu n'as qu'un tableau, si on veut.
 

Pièces jointes

  • Classes_Thibaut.zip
    5.5 KB · Affichages: 98
T

Thibault

Guest
Merci Monique,

Ton exemple est une bonne source d'inspiration pour pas mal de choses.
Cependant je ne suis pas encore pleinement satisfait. Je vais regarder coté VBA pour developper une routine qui va bien. Je vous tiendrai au courant du resultat de mes travaux.

Tchao.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…