Correspondance de données sur EXCEL 2003

Fermé
florianlang Messages postés 2 Date d'inscription mercredi 23 septembre 2009 Statut Membre Dernière intervention 24 novembre 2009 - 23 nov. 2009 à 10:52
 florianlang - 27 nov. 2009 à 09:16
Bonjour,

Voici mon soucis:
J'ai deux fichiers Excel que je voudrait regrouper en un. Dans mes deux fichiers j'ai la première colonne qui sert d'identifiant. Dans les deux fichiers, cette première colonne est du même type (long code de chiffres et lettres).
Par exemple, l'identifiant est la référence produit. Les autres colonnes sont des caractéristiques du produit. Mon problème est que dans le premier fichier j'ai certaines caractéristiques produit, et dans l'autre fichier j'ai d'autres données produit : je souhaiterais construire un seul fichier regroupant toutes les caractéristiques pour chaque référence produit. Comment faire la correspondance entre les deux fichiers ?

J'espère que mon explicatrion est claire,
Merci d'avance pour votre aide,

florianlang
A voir également:

5 réponses

triwix Messages postés 296 Date d'inscription mercredi 7 janvier 2009 Statut Membre Dernière intervention 4 février 2011 21
26 nov. 2009 à 02:56
Salut, quelle version d'excel?

Met les 2 feuilles dans le même classeur ça facilitera les calcules.

disons que tes feuilles s'appellent feuil1 et feuil2, dans ta feuil2 tu selectionne toutes tes colonnes et tu les nomme plage1

En colonne A tu as tes ref, A1 est la première ref

Sur ta feuil1 tu met dans la ligne 1 de la première colonne libre la formule: =RECHERCHEV($A1;plage1;2;FAUX) ce qui va te renvoyer l'info contenue dans la seconde colonne de ta feuil2 en rapport avec ta ref contenue dans sa colonne A

Ensuite tu copie vers la droite et changer le numéro de colonne 2 passe à 3, puis 3 à 4 etc

Puis tu sélectionne les cellules contenant ta formule et les copie vers le bas et c'est bon

Patience est mère de surretée
0
triwix Messages postés 296 Date d'inscription mercredi 7 janvier 2009 Statut Membre Dernière intervention 4 février 2011 21
26 nov. 2009 à 03:21
Précision si tu as une erreur NA# qui apparait c'est qu'excel ne trouve pas la ref demandée dans la colonne, mais apparement dans ton cas il n'y aura pas ce soucis si tes 2 tableaux comptent le même nombre de ref.

Sinon tu peux y remèdier, demande comment

J'espère que tu m'aura compris
0
florianlang
26 nov. 2009 à 09:42
J'ai bien compris tes explications, mais mon soucis à présent est qu'il y a des références dans feuil2 qui ne sont pas présentes dans feuil1, et vice-versa. Donc en appliquant ta méthode ci-dessus je perd des réf produit.

Merci pour ton aide,
Cordialement,
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
26 nov. 2009 à 10:26
Bonjour
essayez peut être, si, j'ai bien compris votre problème:
1° de nommer vos deux champ, pour simplifier les formules, sinon ça va être complexe:
soit pour l'exemple:
tout le champ feuille 1: CH_1
tout le champ feuille 2: CH_2
le champ colonne 1 feuille 1: RF_1
le champ colonne 1 feuille 2: RF_2

et dans votre récapitulatif, si CELL est l'adresse dela cellule où vous placez la référence à trouver:
(attention, accrochez vous)
=SI(ET(NB.SI(RF_1;CELL)=0;NB.SI(RF_2;CELL)=0);"non référencé";SI(NB.SI(RF_1;CELL)>0; RECHERCHEV(CELL;CH_1;2;0);RECHERCHEV(CELL;CH_2;2;0))))explication
=SI(ET(NB.SI(RF_1;CELL)=0;NB.SI(RF_2;CELL)=0);"non référencé";
ce texte s'affichera si CELL contient une référence inexistante (NB.SI dans les deux colonnes est égal à zéro
SI(NB.SI(RF_1;CELL)>0; RECHERCHEV(CELL;CH_1;2;0)
détecte qu'il y a bien une référence existante dans CH_1 (NB.SI >0 et applique donc la formule recherche
RECHERCHEV(CELL;CH_2;2;0))))
si aucune des conditions précédentes n'est appliquées, c'est celle ci qui s'applique, c'est à dire quand la référence existe (1° conditon ET annulée) et se trouve dans le CH_2(condition dans RF_1 annulée)

Nota:

La 1° condition SI(ET(.... ...) n'est utile que si vous risquez d'afficher dans CELL des codes absents des deux feuilles, sinon, les deux suivantes suffisent

pour nommer au cas où:
sélectionnez le chazmp à nommer
barre d'outil / Insertion / Nom / Définir et rentrer le nom souhaité

A noter aussi que la formule NB.SI est très utile pour détecter si une valeur se trouve ou non dans une liste
Crdlmnt
0
florianlang
26 nov. 2009 à 10:47
Bonjour Vaucluse,

Merci pour ton aide.

En réalité, j'ai 6 feuilles, et non pas 2 .... (j'ai voulu simplifier pour exposer mon problème).
Mais du coup ta grosse formule n'est pas adaptée à 6 feuilles ?!
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
26 nov. 2009 à 11:06
Et pourquoi pas, la condition ET en prend bien 6 (si vous en avez besoin) et ensuite, il suffit de traiter feuille par nfeuille, c'est effectivement une longue formle, mais elle passe en excel 2003
à chaque fois:
=SI(NB.SI(RF_1;CELL)>0;RECHERCHEV(CELL;CH_1;2;0);SI(NB.SI(RF_2;CELL)>0;RECHERCHEV(CELL;CH_2;2;0);etc>...................
jusqu'à champ 6 qui se passe de SI puisque ce sera le dernier traité.
Dans tous les cas la formule s'arrète quand elle trouve une solution ou passe à la suivante
crdlmnt
Ps: je répéte que l'ensemble ET(.... n'est utile que si vous ne voulez pas voir #NA affiché dans la cellule. Ceci dit#NA vous alerterait aussi bien pour référence non conforme et se passer de cet item allègerait la formule
0
florianlang
26 nov. 2009 à 11:30
Merci beaucoup !
Je vais essayer cela.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
triwix Messages postés 296 Date d'inscription mercredi 7 janvier 2009 Statut Membre Dernière intervention 4 février 2011 21
26 nov. 2009 à 22:00
Ou donne nous un exemple de tes feuilles qu'on se rende mieux compte
0
florianlang
27 nov. 2009 à 09:16
Désolé, mais ce sont des données ultra-confidentielles !
Mais j'ai bien réussi à résoudre mon problème.
Encore merci à tous.
0