Rechercher : dans
Par :

Excel : comparer données de 2 fichiers

Dernière réponse le 26 jun 2008 à 09:42:30 argixu, le 4 nov 2007 à 23:11:44 
 Signaler ce message aux modérateurs

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.

Argitxu

Configuration: Windows XP
Firefox 2.0.0.9

Meilleures réponses pour « Excel : comparer données de 2 fichiers » dans :
[Excel] Chemin et nom de stockage de feuille de calcul VoirIndiquer automatiquement le chemin d'accès (path) et le nom de stockage de toute feuille de calcul Noter dans une cellule (A& par exemple) la formule : =cellule("nomfichier";A1) A chaque sauvegarde et/ou déplacement de fichier dans votre...

1

eriiic, le 5 nov 2007 à 01:00:24

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(A­2;$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

Répondre à eriiic

2

eriiic, le 5 nov 2007 à 01:02:36

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(A­2;$D$2:$D$8;0);2)<>B2;"nouveau prix";"");"nouveau code")

Répondre à eriiic

3

argixu, le 5 nov 2007 à 12:25:34

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.
Argitxu

Répondre à argixu

4

Raymond PENTIER, le 5 nov 2007 à 13:10:30

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 !
Un retraité au soleil des Antilles :-)
Raymond

Répondre à Raymond PENTIER

5

eriiic, le 5 nov 2007 à 17:30:10

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

Répondre à eriiic

6

sebsauvage, le 5 nov 2007 à 17:36:44

Sinon vous pouvez aussi exporter en CSV et utiliser un logiciel de comparaison de fichiers texte comme ExamDiff.

Répondre à sebsauvage

7

argixu, le 5 nov 2007 à 22:04:07

Seb, Merci pour cette info., je regarde.
Cordialement.
Argitxu

Répondre à argixu

8

PBGunner, le 5 nov 2007 à 22:26:57

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+

Répondre à PBGunner

14

 jumix, le 26 jun 2008 à 09:42:30

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

Répondre à jumix

9

patfob, le 6 nov 2007 à 15:58:15

Que pensez vous d'utiliser la formule vlookup ??

Répondre à patfob

10

eriiic, le 6 nov 2007 à 20:14:22

Bonsoir patfob,

C'est recherchev() sur excel en français, mais pour ce pb il est trop limité.
eric

Répondre à eriiic

11

eriiic, le 6 nov 2007 à 20:22:00

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

Répondre à eriiic

12

argixu, le 7 nov 2007 à 00:48:25

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.
Argitxu

Répondre à argixu

13

Mat, le 15 jan 2008 à 15:47:38

Oui, ça m'intéresse grandement.. Peux-tu l'envoyer, stp ?

Répondre à Mat
Collection CommentÇaMarche.net