Lire un tableau dans excel...
Résolu
barbiche0
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
barbiche0 Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
barbiche0 Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Mon titre n'est pas très clair, alors voilà mon problème (très simple à résoudre j'imagine) :
J'ai un tableau sous excel qui contient des données prédéfinies : les lignes représentent l'inclinaison, les colonnes l'orientation. Pour une orientation et une inclinaison, le tableau donne un résultat.
L'utilisateur est invité à saisir dans deux cases distinctes une inclinaison et une orientation ; dans une case résultat doit apparaître la lecture du tableau correspondante. Alors d'accord, je pourrais faire une imbrication de plusieurs si avec une rechercheV à chaque fois, mais c'est la solution bidouille. C'est pas classe.
J'ai cherché une fonction qui fonctionnerait par "cas" prédéfinis un peu comme en C, mais j'ai pas trouvé. J'ai aussi vu plusieurs solutions sur le net, notamment par intersection ou avec des fonctions RECHERCHEV intégrant un EQUIV (j'ai rien compris).
J'espère que l'un de vous pourra pointer du doigt la fonction que je cherche ; elle doit quand même bien exister !? Dans le cas contraire, comment résoudre ce problème ?
Merci d'avance.
Mon titre n'est pas très clair, alors voilà mon problème (très simple à résoudre j'imagine) :
J'ai un tableau sous excel qui contient des données prédéfinies : les lignes représentent l'inclinaison, les colonnes l'orientation. Pour une orientation et une inclinaison, le tableau donne un résultat.
L'utilisateur est invité à saisir dans deux cases distinctes une inclinaison et une orientation ; dans une case résultat doit apparaître la lecture du tableau correspondante. Alors d'accord, je pourrais faire une imbrication de plusieurs si avec une rechercheV à chaque fois, mais c'est la solution bidouille. C'est pas classe.
J'ai cherché une fonction qui fonctionnerait par "cas" prédéfinis un peu comme en C, mais j'ai pas trouvé. J'ai aussi vu plusieurs solutions sur le net, notamment par intersection ou avec des fonctions RECHERCHEV intégrant un EQUIV (j'ai rien compris).
J'espère que l'un de vous pourra pointer du doigt la fonction que je cherche ; elle doit quand même bien exister !? Dans le cas contraire, comment résoudre ce problème ?
Merci d'avance.
A voir également:
- Lire un tableau dans excel...
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Trier un tableau excel - Guide
- Tableau word - Guide
- Lire un fichier epub - Guide
- Imprimer un tableau excel - Guide
4 réponses
Tu peux jouer avec deux fonctions, la fonction RECHERCHEV comme tu l'as deviné, mais aussi la fonction EQUIV, qui te donnera le numéro de la colonne à récupérer.
Voilà comment tu procèdes:
En A1 tu tapes la valeur recherchée en colonne, donc l'orientation si j'ai bien suivi.
En A2, l'inclinaison.
Imaginons que ton tableau soit dans les cellules A10:G18, la fonction sera la suivante:
=RECHERCHEV(A2;A10:G18;EQUIV(A1;A10:G10;0);FAUX)
La fonction EQUIV trouvant le numéro de la colonne dans laquelle se trouve l'orientation saisie en A1 parmi les cellules A10:G10; en-têtes de ton tableau donc.
Voilà comment tu procèdes:
En A1 tu tapes la valeur recherchée en colonne, donc l'orientation si j'ai bien suivi.
En A2, l'inclinaison.
Imaginons que ton tableau soit dans les cellules A10:G18, la fonction sera la suivante:
=RECHERCHEV(A2;A10:G18;EQUIV(A1;A10:G10;0);FAUX)
La fonction EQUIV trouvant le numéro de la colonne dans laquelle se trouve l'orientation saisie en A1 parmi les cellules A10:G10; en-têtes de ton tableau donc.
Bonsoir,
tu peux faire avec equiv() et index().
equiv() te recherche le n° de ligne ou de colonne,
INDEX(tableau;no_ligne;no_col) te retourne l'intersection.
=INDEX(B2:D13;EQUIV(F2;A2:A13;0);EQUIV(G2;B1:D1;0))
B2:D13: tes données
F2: ta valeur recherchée en colonne A (on va dire comme ça pour pas s'embrouiller entre déclinaison et orientation...)
G2: ta valeur recherchée en ligne 1
eric
tu peux faire avec equiv() et index().
equiv() te recherche le n° de ligne ou de colonne,
INDEX(tableau;no_ligne;no_col) te retourne l'intersection.
=INDEX(B2:D13;EQUIV(F2;A2:A13;0);EQUIV(G2;B1:D1;0))
B2:D13: tes données
F2: ta valeur recherchée en colonne A (on va dire comme ça pour pas s'embrouiller entre déclinaison et orientation...)
G2: ta valeur recherchée en ligne 1
eric
Bonjour LatelyGeek,
Et merci de ta réponse. J'ai appliqué ta formule à mon tableau, mais le résultat affiché est #N/A.
Je dois peut-être préciser deux choses supplémentaires :
- L'orientation entrée est une chaîne de caractères (S, SE, E, etc...) identique dans le tableau, au demeurant ; peut être dois-je modifier un paramètre en conséquence...
- J'ai bêtement inversé dans mon énoncé O_o', les colonnes correspondent à l'orientation (donc le paramètre à modifier serait dans le EQUIV j'imagine...). Désolé.
Et merci de ta réponse. J'ai appliqué ta formule à mon tableau, mais le résultat affiché est #N/A.
Je dois peut-être préciser deux choses supplémentaires :
- L'orientation entrée est une chaîne de caractères (S, SE, E, etc...) identique dans le tableau, au demeurant ; peut être dois-je modifier un paramètre en conséquence...
- J'ai bêtement inversé dans mon énoncé O_o', les colonnes correspondent à l'orientation (donc le paramètre à modifier serait dans le EQUIV j'imagine...). Désolé.
Bonsoir Eriic,
Et merci de ta réponse.
Ta formule fonctionne très bien, et INDEX semble être la fonction parfaite pour mon besoin.
LatelyGeek, merci à toi aussi ; ta formule n'est pas en cause, elle fonctionne bien évidemmment (même si je préfère utiliser INDEX ). Le souci venait du fusionnage de cellule des en-têtes de mon tableau. Une fois défusionnées, tout fonctionne à merveille.
Merci à tous les deux !
A la revoyure ! ^_-
Et merci de ta réponse.
Ta formule fonctionne très bien, et INDEX semble être la fonction parfaite pour mon besoin.
LatelyGeek, merci à toi aussi ; ta formule n'est pas en cause, elle fonctionne bien évidemmment (même si je préfère utiliser INDEX ). Le souci venait du fusionnage de cellule des en-têtes de mon tableau. Une fois défusionnées, tout fonctionne à merveille.
Merci à tous les deux !
A la revoyure ! ^_-