Lecture de la valeur d'une cellule d'une base des données. [Résolu/Fermé]

Signaler
-
 eloramo -
Bonjour,

je veux simplement remplir une matrice B à partir d'une matrice A. les étiquettes des lignes et des colonnes sont les memes pour les deux matrices. par contre, ils ne sont pas dans le meme order. la matrice A contient plus de données que la matrice A.
j'espere que c'est claire.

Merci d'avance

5 réponses

Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 815
Bonjour
j'espère que c'est claire

ben.... on se pose quand même quelques question, la matrice A étant plus grande que la matrice A.
Au delà du fait qu'on en conclut quand même que les deux matrices n'ont pas la même taille,on ne sait pas trop comment sont organisées ces données!

une base de raisonnement à adapter toutefois, pour retrouver en A ce qui est en B,en
supposant que vos données vont en feuil1 de A à Z avec le début de titre de ligne en A et le début des titres de colonnes en B sur les deux feuilles

Base de données en feuil1, édition en feuil2

en A2 feuil2 la formule à tirer sur tout le champ:

=INDEX(Feuil1:$A:$Z;EQUIV($A2;Feuil1!$A:$A;0);EQUIV(B$1;Feuil1!$1:$1;0))

vous renverra la valeur de feuil1 au croisement de la ligne contenant en A:A A2 de feuil2 et de la colonne contenant en A1:Z1 B1 de feuil2

Attention aux signe $ aux bons endroits avant de tirer la formule sur le champ feul2

revenez si ça aussi ça n'est pas clair!

crdlmnt

Merci Vaucluse,

Ca n'a pas fonctionner pour moi.

pour clarifier la sitution:
j'ai une base de donnée des prix des produit A à Z en focntion de la date. les noms des produits sont sur la ligne 1 et les dates sont sur la colone A. je veux etre capable d'extraire le prix d'un produit à une date donnée.

feuille 1

P1 P2 P3
j1 1 2 3
j2 4 5 6
j3 7 8 9

Sur la feuille 2, je veux etre capable de connaitre le prix en fournissant le nom du produit et le jour.

Merci
Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 815
Alors, ca devrait fonctionner!

quelle est la formule que vous utilisez, sachant que:

soit vous placez la date cherchée entre guillemets dans la formule,
soit vous placez la date cherchée dans une cellule dont vous placez l'adresse dans la formule(mais sans les guillemets)

Et si ça ne va toujours pas, dites nous quelle formule vous utilisez!

... et aussi si vous cherchez la date exacte où si vous cherchez une date proche.

Et si ça ne va toujours pas, on vous demandera un modèle de votre fichier, à moins que vous ne puissiez le mettre à disposition tout de suite sur:
https://www.cjoint.com/
en revenant ici placer le lien donné par le site

A vous lire

crdlmnt

Errare humanum est, perseverare diabolicum
je viens de déposer le fichier dans le lien donner.

Comme demander, je veux remplir la feuille Position (on peux faire seulement la plage B10:C12.) avec les prix de la feuille Prix. j'ai le nom de la compagnie en colone et la date en ligne.

Merci
excuse, la formule que j'ai essayé d'utiliser est : =INDEX(Prix:$A:$Z;EQUIV($A10;Prix!$A:$A;0);EQUIV(B$9;Prix!$1:$1;0)) mais je recois un message d'erreur dans la formule.
Merci
Bonjour,

je viens d'améliorer un peu la formule. Par contre, le résultat n'est pas encore correcte.
je rentre dans la case B10 la formule suivante:

=INDEX(Prix!A9:BJ4208,EQUIV($A10,Prix!$A:$A,0),EQUIV(B$9,Prix!$9:$9,0))

et j'obtien une date 30-jan-00, alors que je cherche le prix qui correspond au produit B9 à la date A10.

est-ce que tu vois un probleme dans la formule?

Merci d'avance
Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 815
Bonjour

le lien pour accéder au fichier n'a pas été coller dans un message, on ne va pas le trouver
Il faut copier le ligne en et le coller ici!
en attendant:


"est-ce que tu vois un probleme dans la formule?"
Quelques uns oui!

1°) limite encore la formule aux limite utiles et surtout aligner les lites de INDEX et de EQUIV sinon tout se décale:
2°) où sont les titres de colonne, en ligne 9 ou en ligne 1?.S'ils sont en 1 il faut chercher les titres dans le champ ligne 1 pas la ligne 9! et donc
3°) il faut bloquer avec les $ de champ de l'item INDEX
4°) si le résultat est 30-jan-00 la valeur numérique est 30, mais ta cellule est formatée en jj-mm-aa, reformate en standard, il est possible que les cellules résultats passent en date avec l'implantation de la formule
Donc:
=INDEX(Prix!$A$1:$BJ$4208,EQUIV($A10,Prix!$A$1:$A$4208,0),EQUIV(B$9,Prix!$A$1:$BJ$1))


Ça devrait aller, mais s'il faut transmettre le fichier n'oublie pas de coller le lien

crdlmnt
Bonjour,

voilà le lien:
http://www.cjoint.com/?3BmvfKoW2Ya

Merci
Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 815
Votre fichier en retour:

https://www.cjoint.com/?DBnoEq7lV2M

la formule est placée de B10 à C12 dans la feuille position, mais les résultats n'ont pas grand chose à voir avec les autres valeurs du tableau (?)
Rappel:
Quand vous placez la formule dans le tableau, Excel formate automatiquement la cellule en format date.
La valeur du résultat est correcte, mais Il faut la reformater en standard si vous voulez afficher une valeur numérique.

Bien entendu, il faut impérativement que les dates de la,colonne A de position soient présentes dans la, colonne A de Prix

crdlmnt
un grand merci Vaucher. c'est réglé.

la formule finale est:
=((BDSOMME(action_sous_gestion_achat,B$9,Achat!$A$9:$A10)-BDSOMME(action_sous_gestion_vente,B$9,Achat!$A$9:$A10)) * BDSOMME(action_data_prix_periode_oo,B$9,Achat!$A$9:$A10))*(INDEX(Prix!$A$1:$BJ$4208,EQUIV($A10,Prix!$A$1:$A$4208,0),EQUIV(B$9,Prix!$A$9:$BJ$9,0)))
Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 815
Pas de quoi, eloramo, je ne sais pas ce qu'en pense Vaucher, mais Vaucluse est ravi d'avoir pu vous aider.
Bonne route
Je passe le sujet en résolu
Oooooops.
ok à la prochaine Vaucluse.