[Excel] Lier deux tableaux sur 2 feuilles, PB de trie

Lier deux tableaux sur 2 feuilles, PB de trie [Excel] - Logiciels - Windows & Software

Marsh Posté le 29-01-2012 à 01:18:55    

Bonjour,

 

Je vous soumet mon problème, déjà pas très facile a expliquer... Bon je m'y colle.

 

Dans une feuille 1 j'ai un tableau avec des champs en entête. Je peut donc trier mes colonnes ou filtrer à partir de ma ligne d'entête.
J'ai une colonne qui contient des valeurs uniques de 1 à 200 correspondant a un ordre de départ.
Dans les autre colonnes, j'ai d'autre infos comme NOM Prénom etc.

 

Dans une feuille 2 J'ai un autre tableau avec des champs en entête qui complète le premier tableau, ou je peut aussi trier ou filtrer.
Ce deuxième tableau comporte également la même colonne avec les numéros de départ de 1 à 200 qui sert de champs commun aux deux tableaux.

 

Les colonnes B, C récupèrent les valeurs de NOM, Prénom contenu dans la feuille 1 avec la fonction RECHERCHEV.
Les colonnes suivantes D, E, F comportent les coordonnées Adresse, CP, Ville.

 

Il y a donc une sorte de relation entre mes 2 tableaux avec la fonction RECHERCHEV.

 

Mon problème survient quand je doit changer l’ordre de départ dans le tableau 1, en inversant deux chiffres parmi ma liste de numéro de 1 à 200.
Donc quand je change mes numéros et que je refait un tri sur ma colonne dans le tableau1 tous va bien.

 

Quand je retourne sur ma feuille 2 avec le tableau 2, mes valeurs B et C sont bonnes puisque la fonction RECHERCHEV récupère les valeurs, par contre le contenu des colonne suivantes D, E, F est décalé et ne correspond plus aux NOM, prénom des colonnes B et C. Quand je trie le tableau 1 , le trie ne se fait pas sur tableau 2 et mes données ne correspondent plus.

 

C'est comme faire une jointure entre deux tables sous Access, mais je voudrais le faire sur Excel car les utilisateurs qui doivent remplir les listes n'ont pas Access et il ,faut que ça reste simple pour eux.

 

Avez-vous une idée, une fonction miracle dans Excel pour ce genre de chose, sans passer par du VB, n'étant pas programmeur...
Les tableaux croisés ne semblent pas indiqués car utilisés pour faire des synthèses et pas pour simplifier les saisies.

 

J’espère que mon explication vous est compréhensible.

 

Si ça vous semble insoluble avec Excel, pensez-vous que je peut faire ça dans une base sur Google Docs pour partager la base avec les utilisateurs qui doivent remplir les deux tableaux... ---> Je viens de voir que non, pas de module base de donnée sur Google Docs...

 

Merci d'avance pour vos éclaircissement, je tourne un peu en rond.


Message édité par bpfonline le 29-01-2012 à 01:37:51
Reply

Marsh Posté le 29-01-2012 à 01:18:55   

Reply

Marsh Posté le 29-01-2012 à 08:05:40    

Bonjour,
Il me semble que l'utilisation de la colonne des numéros 1 à 200 comme identifiant n'est pas bien adaptée, alors que ce devrait plutôt être le nom.
Il serait peut-être mieux d'avoir une feuille avec les noms et les informations associées, et à utiliser cette feuille comme unique source pour afficher les données utiles dans les deux feuilles décrites, ou une autre disposition.

 

La "base de données" des personnes, c'est en quelque sorte cette feuille, les autres ne sont que des feuilles utilitaires de présentation.
Un numéro d'identification unique peut-être associé au nom pour servir d'identifiant si c'est moins source d'erreurs dans les comparaisons.

 

Le numéro d'ordre utilisé dans ta description n'a alors peut-être plus de raison d'être, à moins qu'il ne s'agisse d'un classement de compétition sportive, ou d'un numéro d'objet pour gérer un système de prêt / location.
Dans ce dernier cas, il faudrait une autre feuille base de données des objets.
Pas trop facile sans connaitre le sujet...

Message cité 1 fois
Message édité par yf38 le 29-01-2012 à 08:44:24
Reply

Marsh Posté le 29-01-2012 à 12:04:20    

yf38 a écrit :

Bonjour,
Il me semble que l'utilisation de la colonne des numéros 1 à 200 comme identifiant n'est pas bien adaptée, alors que ce devrait plutôt être le nom.
Il serait peut-être mieux d'avoir une feuille avec les noms et les informations associées, et à utiliser cette feuille comme unique source pour afficher les données utiles dans les deux feuilles décrites, ou une autre disposition.
 
La "base de données" des personnes, c'est en quelque sorte cette feuille, les autres ne sont que des feuilles utilitaires de présentation.
Un numéro d'identification unique peut-être associé au nom pour servir d'identifiant si c'est moins source d'erreurs dans les comparaisons.
 
Le numéro d'ordre utilisé dans ta description n'a alors peut-être plus de raison d'être, à moins qu'il ne s'agisse d'un classement de compétition sportive, ou d'un numéro d'objet pour gérer un système de prêt / location.
Dans ce dernier cas, il faudrait une autre feuille base de données des objets.
Pas trop facile sans connaitre le sujet...


 
Merci de m'aider.
Les numéro d'ordre sont effectivement utilisés pour une compétition sportive et donne l'ordre de départ des participants. Donc les Noms en face des numéros changent obligatoirement, certains Noms peuvent même disparaitre. Il faut voir la colonne de numéro 1 à 200 comme un champ clé primaire dans Access, car mes autre feuille l'utilise comme référence. Ca marche pour les formules RECHERCHEV dans ma feulle 2, mais pour les donnés saisies en dure, ça décale tout lors du trie.
L'idéal serait de tout avoir sur une même feuille mais il y a trop de colonne dans ce cas, et les usages sont différents pour chaque tableaux. Un tableau est destiné a tel personne selon son besoin. La saisie des 2 feuille se fera aussi par des personnes différentes, car ce ne sont pas les même infos.
 
J'espère que ça vous semple plus compréhensible.


Message édité par bpfonline le 29-01-2012 à 12:09:01
Reply

Marsh Posté le 29-01-2012 à 12:53:14    

Bonjour,
 
Je pense aussi que tu n'utilises pas la bonne clé primaire.
A mon avis, il faut que tu utilises "le numéro de dossard" comme clé primaire.
Du coup, cela ressoudra tes soucis de RechercheV.
 
Salutations.

Reply

Marsh Posté le 29-01-2012 à 14:03:20    

J'ai compris que les numéros 1 à 200 sont utilisés comme clé primaire, mais c'est de la pertinence de ce choix dont je doute.
Est-ce que la vraie clé primaire dans ce cas ne serait pas plutôt les noms des participants, ou un numéro d'inscription par exemple, qui leur est associé, mais qui ne change pas.
edit: je vois, maintenant que je ne suis pas le seul cet avis, numéro de dossard !


Message édité par yf38 le 29-01-2012 à 14:05:55
Reply

Marsh Posté le 29-01-2012 à 14:10:47    

En fait les numéros qui leur sont associés changent pour redéfinir l'ordre de départ, ça la que ça coince justement.
Je vais essayer de faire mes RECHERCHESV sur les NOMS pour voir.

 

Ce que j'ai oublier c'est que pour 1 numéro de participant, j'ai 3 Noms différents dans la table puisque c'est comme une équipe...

 

Les 3 noms sont saisies dans la feuille 1 et je doit récupérer ces valeurs dans la feuille 2.

 

Bon je teste.


Message édité par bpfonline le 29-01-2012 à 15:26:18
Reply

Marsh Posté le 29-01-2012 à 17:21:37    

J'ai refait des essais avec INDEX et EQUIV imbriqué, mais je ne sais pas par quel bout y prendre... Je m'y perd.
Pour résumer :
 
Tableau 1:
N°, Nom1, Nom2, Nom3
 
Tableau 2:
N°, Nom1, Adrersse1, Nom2, Adresse2, Nom3, Adresse3
 
Les données sont saisies dans tableau1 et les formules dans le tableau2 puise le contenu depuis le tableau1, sauf pour les colonnes Adresse saisie en dur dans le tableau2.

Reply

Marsh Posté le 29-01-2012 à 17:53:20    

Un exemple de solution possible, vite fait:
http://img861.imageshack.us/img861/508/equipe.jpg

 

Dans la feuille 1 on saisit les noms, et le numéro d'équipe.
On met autant de lignes que de noms, c'est bien plus simple.
Dans la feuille 2, il n'y a qu'une seule formule, à propager en dessous, qui fournit le numero d'équipe pour chaque nom, trouvé dans la feuille 1.

 

On peut trier comme on veut la feuille 1 et la feuille 2 de manière indépendante sans problème il me semble.

 

Au début j'avais mis 3 noms par équipe, et j'avais bien ça dans la feuille 2, puis j'ai changé d'équipe ceux en jaune et ça a bien suivi.

 

amélioration pour la présentation:
http://img856.imageshack.us/img856/3342/equipe2m.jpg

 

On voit en colonne A de la feuille 1 les numéros d'équipe repiqués de la colonne C mais affichés seulement pour le premier de la liste de l'équipe.
Voir la formule, à mettre en A3 et au dessous.
Quand on change un nom d'équipe, on refait trier et la présentation redevient comme ça.
Rien ne bronche ur la feuille 2.
Et on peut masquer la colonne C quand on ne veut pas la voir.

Message cité 1 fois
Message édité par yf38 le 29-01-2012 à 18:16:50
Reply

Marsh Posté le 29-01-2012 à 18:19:29    

yf38 a écrit :

Un exemple de solution possible, vite fait:
http://img861.imageshack.us/img861/508/equipe.jpg
 
Dans la feuille 1 on saisit les noms, et le numéro d'équipe.
On met autant de lignes que de noms, c'est bien plus simple.
Dans la feuille 2, il n'y a qu'une seule formule, à propager en dessous, qui fournit le numero d'équipe pour chaque nom, trouvé dans la feuille 1.
 
On peut trier comme on veut la feuille 1 et la feuille 2 de manière indépendante sans problème il me semble.
 
Au début j'avais mis 3 noms par équipe, et j'avais bien ça dans la feuille 2, puis j'ai changé d'équipe ceux en jaune et ça a bien suivi.


 
En fait je n'ai qu'une ligne par numéros dans mes deux tableau, voici la capture de ce que j'ai :
http://img20.imageshack.us/img20/4990/capxr.th.jpg
Le tableau 1 est celui du haut (il comporte d'autre champs), le tableau 2 en bas qui doit récupérer les données.

Reply

Marsh Posté le 29-01-2012 à 18:22:38    

J'ai compris que tu avais trois noms par ligne... mais c'est plus compliqué.

Reply

Marsh Posté le 29-01-2012 à 18:22:38   

Reply

Marsh Posté le 29-01-2012 à 18:37:35    

Je ne peut pas changer la structure du tableau 1.
Sous Access ce serai idéal, il suffirait que je stock tout dans la même table, que je fasse deux formulaires adaptés pour les saisies et des requêtes avec états pour sortir les bonnes listes selon les cas...
Mais pour les exploitants qui doivent juste saisir, pas très adapté.


Message édité par bpfonline le 29-01-2012 à 18:38:47
Reply

Marsh Posté le 10-02-2012 à 15:57:29    

J'ai pas tout suivi, mais pourquoi tu n'utilises pas qu'un seul onglet de saisie, et ensuite tu passes par MSQuery pour faire tes requetes ?


---------------
Soyez malin, louez entre voisins !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed