Excel : comparer données de 2 fichiers

Résolu
Utilisateur anonyme -  
8ie Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche à comparer les données de 2 fichiers sous excel 2003.
J’utilise un fichier que je récupère et dont les données sont mises à jour régulièrement. Je dois connaître ces mises à jour faites d’une version à l’autre pour vérifier les évolutions de tarifs.
Le détail qui me gêne est que la mise à jour porte parfois sur 1 ligne, qui est insérée, au lieu d’être rajoutée au début ou à la fin sur un fichier de 7 600 lignes environ. Il faut chercher où. Et le « comparer côte à côte » me fait loucher !
Avez-vous une formule qui puisse me détecter automatiquement la ou les différences sur le tarif mais en intégrant l'éventuelle insertion de ligne ?
Un exemple en colonne A et B :
Fichier version 1.............. Fichier version 2
Code .......Prix ............... Code...... Prix
DZQJ008 144,05............ DZQJ008 144,05
DZQJ009 102,81............ DZQJ009 102,81
DZQJ010 148,76............ DZQJ010 148,76
DZQJ011 140,35............ DZQJ011 140,35
DZQJ012 150,00............ DZQJ012 150,00
DZQJ900 .NPEC............. DZQJ013 20,00
DZQM002 154,38........... DZQJ900 NPEC
................................ DZQM002 154,38

Merci d'avance de votre aide.
A voir également:

13 réponses

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonsoir,

En colonnes A:B tes nouveaux prix, en colonnes D:E tes ancien prix,
En C2 tu saisis: =SI(ESTNUM(EQUIV(A2;$D$2:$D$8;0));SI(INDEX($D$2:$E$8;EQUIV(A2;$D$2:$D$8;0);2)<>B2;"nouveau prix";"");"nouveau code") et tu recopies vers le bas
En colonne C tu auras soit rien si inchangé, ou "nouveau prix" ou "nouveau code" selon le cas.
Tu n'as plus qu'à mettre un filtre automatique sur cette colonne si tu veux voir les nouveaux.
Adapter la formule bien sûr si les colonne C,D et E ne sont pas disponibles

Voici un fichier exemple:
http://www.cijoint.fr/cij60742572330812.xls

eric
2
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
CCM n'a pas aimé une partie de ma formule... :-s
Je recolle
=SI(ESTNUM(EQUIV(A2;$D$2:$D$8;0));SI(INDEX($D$2:$E$8;EQUIV(A2;$D$2:$D$8;0);2)<>B2;"nouveau prix";"");"nouveau code")
0
Utilisateur anonyme
 
Bonjour,
Eric, j’ai adapté ta formule à mon fichier, c’est parfait (comme d’hab.), et même plus que parfait : je détecte beaucoup plus de mises à jour que je ne pensais (j’avais renoncé, je ne le regardais plus qu'en diagonale) et en un temps record. Alors merci merci.

Par contre, je ne comprends vraiment rien à la formule. Tu balayes d’abord l’ancienne version avec EQUIV (fonctionne comme RECHERCHEV ?), ensuite la nouvelle, mais tu associes dans un même SI EQUIV et INDEX. Je ne voudrais pas abuser mais peux-tu décoder un tout petit peu s’t’pl’ ?
Encore merci de ton aide.
0
Raymond PENTIER Messages postés 58988 Date d'inscription   Statut Contributeur Dernière intervention   17 353
 
Bonjour, tous.

J'apprécie le retour d'argixu dans le forum et l'expertise d'Eric.
Je suis également preneur d'une analyse du fonctionnement de sa formule. Merci d'avance !
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonjour,

Pas de pb, je détaillerai mais je n'ai plus d'adsl chez moi... :-s
Peut-être demain si tout va bien
Bonne soirée à toutes et tous
eric
0

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

Posez votre question
sebsauvage Messages postés 32893 Date d'inscription   Statut Modérateur Dernière intervention   15 662
 
Sinon vous pouvez aussi exporter en CSV et utiliser un logiciel de comparaison de fichiers texte comme ExamDiff.
0
Utilisateur anonyme
 
Seb, Merci pour cette info., je regarde.
Cordialement.
0
PBGunner Messages postés 64 Date d'inscription   Statut Membre Dernière intervention   64
 
Sinon, un de mes collègues avait développé une macro qui compare 2 onglets et utilise un code couleur pour comparer les cellules modifiées... Si ca vous interesse je vous l'enverrai!
a+
0
jumix
 
bonjour tout le monde,
J'aurai vraiment besoin de cette macro...
Bon je te reponds apres une année passée mais si jamais quelqu'un d'autre peut me sauver la mise..

Merci à vous
0
patfob Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Que pensez vous d'utiliser la formule vlookup ??
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonsoir patfob,

C'est recherchev() sur excel en français, mais pour ce pb il est trop limité.
eric
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonsoir tout le monde,

J'ai essayé de détailler la formule dans le fichier ci-joint.
Je ne suis pas vraiment satisfait, c'est plus facile à expliquer de vive voix mais j'espère que ça vous éclairera suffisament quand même.
http://www.cijoint.fr/cij74763131730932.xls
Argixu (et ceux qui veulent :-) ) regarde C7. Tu peux faire ça en définissant la formule dans un nom (menu 'insertion / nom / definir) si tu préfères avoir une feuille plus claire. En plus tout le monde croira que tu as fais une macro vba !!! ;-).
Bonne lecture
eric
0
Utilisateur anonyme
 
Rebonsoir Eric,
Je regarderai tes explications à tête reposée une fois imprimées, surtout pour la deuxième partie de la formule. Mais je ne garantis pas du tout du tout que j'y arriverai seule. Je risque donc revenir car elle pourrait m'être utile pour l'adapter à d'autres extractions.
Pour C7, non, personne ne me croira !
Merci encore d'avoir pris tout ce temps.
0
Mat
 
oui, ça m'intéresse grandement.. Peux-tu l'envoyer, stp ?
0
Marie
 
Bonjour,

j'utilise Excel 2010 est j'aimerai faire un opération:

J'ai deux tableaux contenants des références, des quantités, ...
Les références se trouvent chacune dans le même tableau mais dans un ordre différent (exemple: ligne 1 référence T dans le premier tableau et ligne 3 référence T dans le deuxième tableau)
J'aimerai, pour chaque référence, calculer la différence des quantités.

exemple:

Tableau 1:

T 5
R 12
S 20
U 18

Tableau 2:

R 8
S 12
U 9
T 3

Résultats que je souhaite obtenir:

T 2
R 4
S 8
U 9
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour
pas conseillé, de s'accrocher à un vieux sujet, mais on l'a trouvé quand même
Si votre liste récapitulative de référence commence en A2 avec T:
=SOMME.SI(champ réf1° tableau;A2;champ montant 1°tableau)-SOMME.SI(champ réf 2° tableau;"A2;Champ montant 2° tableau)

ou encore:
=RECHERCHEV(A2;champ complet 1°tableau;2;0)-RECHERCHEV(A2;Champ complet 2° tableau,;2;0)

crdlmnt
0
Marie
 
Bonjour,
Je n'ai pas pensé à rechercher un sujet plus récent ou à créer un nouveau sujet, mais merci beaucoup de m'avoir répondu aussi rapidement.
Je vais essayer ça tout de suite!

Merci encore!!!!!
0
Marie
 
Si j'ai bien compris réf1°tableau fait référence à mon premier tableau et réf2°tableau fait référence à mon deuxième tableau?
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
exact, il faut placer les adresses dans les formules

si votre 1° tableau va de C1 à D20 et le second de E1 à F20
la formule SOMME.SI:
pour éditer en B1 le résultat correspondant à la référence entrée en A1:
=SOMME.SI($C$1:$C$20;A1;$D$1:$D$20)-SOMME.SI($E$1:$E$20;A1;$F$1:$F$20)
et pour la formule RECHERCHEV=
=RECHERCHEV(A1;$C$1:$D$20;2;0)-RECHERCHEV(A1;$E1:$F20;2;0)

à adapter à vos champs

les signes $ dans les limites de champ permettent de tirer la formule sur la colonne B sans modifier ces adresses (les champs restent figés, mais A1 devient A2 sur ligne 2 etc..)
.
crdlmnt
0
Marie
 
Merci de votre aide, j'ai utilisé la deuxième formule, plus simple à mon goût, et j'ai créé des plages pour que ça soit plus rapide.

Je vous remercie encore pour votre aide, vous m'avez évité de longues heures de réflexion et de recherche :).

Cordialement

Marie
0
8ie Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
en fait j'ai appliqué la formule proposée au tout début de ce sujet. Voici à quoi ressemble mes données:

Equipe1 compta Equipe1 compta

Equipe2 finance Equipe2 finance et ADV

le but recherché est de voir les différences (rajout ou suppression) entre les colonnes A:B et les colonnes D:E


merci
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonjour,

Une réponse à un problème spécifique n'est pas forcément adapté à ta problématique.
Le mieux est démarrer une nouvelle question en expliquant et en joignant un fichier exemple avec le avant et le après.
Là tu te greffes sur un sujet ancien, résolu de plus.
Peu de chance que grand monde lise ta question...
déposer le fichier exemple sur cijoint.fr et coller dans ton nouveau post le lien fourni

eric
0
8ie Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Merci Eric pour ta suggestion. Je vais donc démarrer une nouvelle question.
l'élément [Résolu] m'avait échappé.
cdlt
0