Excel : comparer données de 2 fichiers [Résolu/Fermé]

Signaler
Messages postés
4814
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
3 octobre 2018
-
8ie
Messages postés
5
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
20 septembre 2012
-
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.

13 réponses

Messages postés
23267
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
19 février 2020
5 922
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 87707 internautes nous ont dit merci ce mois-ci

eriiic
Messages postés
23267
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
19 février 2020
5 922
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")
Messages postés
4814
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
3 octobre 2018
3 457
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.
Messages postés
50983
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
20 février 2020
12 141
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 !
Messages postés
23267
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
19 février 2020
5 922
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
Messages postés
33213
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
14 635
Sinon vous pouvez aussi exporter en CSV et utiliser un logiciel de comparaison de fichiers texte comme ExamDiff.
argixu
Messages postés
4814
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
3 octobre 2018
3 457
Seb, Merci pour cette info., je regarde.
Cordialement.
Messages postés
64
Date d'inscription
mercredi 17 octobre 2007
Statut
Membre
Dernière intervention
29 juillet 2008
60
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+
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
Messages postés
2
Date d'inscription
lundi 28 mai 2007
Statut
Membre
Dernière intervention
6 novembre 2007

Que pensez vous d'utiliser la formule vlookup ??
eriiic
Messages postés
23267
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
19 février 2020
5 922
Bonsoir patfob,

C'est recherchev() sur excel en français, mais pour ce pb il est trop limité.
eric
Messages postés
23267
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
19 février 2020
5 922
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
Messages postés
4814
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
3 octobre 2018
3 457
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.
oui, ça m'intéresse grandement.. Peux-tu l'envoyer, stp ?
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
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!!!!!
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?
Vaucluse
Messages postés
24888
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 février 2020
5 039
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
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
8ie
Messages postés
5
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
20 septembre 2012

Bonjour à tous

J'ai essayé d'appliquer la formule suivante mais je n'ai pas eu de résultat:

=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")


J'utilise Excel 2007
mes données sont des chaines de caractères.

Quelqu'un a-t-il une idée?

D'avance merci
Messages postés
5
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
20 septembre 2012

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
eriiic
Messages postés
23267
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
19 février 2020
5 922
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
Messages postés
5
Date d'inscription
mardi 6 septembre 2011
Statut
Membre
Dernière intervention
20 septembre 2012

Bonjour,

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