Rapport de message :*
 

Comparer 2 feuilles de calcul dans Excel 2010

Titre du sujet : Comparer 2 feuilles de calcul dans Excel 2010
par OPVA6311 le 05/12/2016 09:52:45

Bonjour,

Etant débutant en VBA, je cherche à créer une macro VBA pour comparer 2 feuilles Excel dans un classeur.

Voici les données du problème :
J’ai 2 feuilles dans un classeur dont les en têtes de colonne sont identiques, (Excel 2010).
Il y a 20 colonnes et à peu près 150 000  lignes dans chaque tableau, (j’ai réduit mon tableau à 104 lignes).

Je cherche à faire une macro VBA pour comparer ces deux feuilles, en créant un 3ème tableau dans la feuil3.
- attention, il y a un décalage dans les colonnes pour obtelir un « commentaire » dans la colonne A du tableau de la Feuil3.
- Le but est d’obtenir un tableau récapitulatif dans lequel j’ai toutes les données sans doublons provenant des tableaux en feuil1 et feuil2.

J’ai crée un code unique dans la feuil1 et Feuil2 en « concaténant » les colonnes de « C à U ».
- On compare le tableau en Feuil1 avec celui en Feuil2 et on créé un tableau en Feuil3

1- vérifier que le code unique en Feuil1 existe en Feuil2.
2- S’il existe, on colle la ligne de la Feuil1 dans la Feuil3.
3- S’il n’existe pas, on colle aussi la ligne entière de la Feuil1 dans la Feuil3 et on met le fond de la cellule en rouge (pour montrer qu’il n’existe que dans la Feuil1).
4- Si le code existe dans les 2 feuilles, alors on compare chaque donnée de chaque colonne. Dès qu’il y a une différence, on met le fond de la cellule en rouge aussi dans la colonne ou il y a un différence.
5- On passe à la ligne suivante dans la Feuil1

Ensuite on compare le tableau en Feuil2 avec celui créé en Feuil3 :

1- Vérifier que le code unique en Feuil2 existe en Feuil3.
2- S’il existe, on ne fait rien (il a déjà été comparé avant).
3- S’il n’existe pas, alors on colle la ligne entière de la Feuil2 dans la Feuil3 et on met le fond de la cellule du code en rouge et aussi dans la colonne ou il ya un différence.
4- On passe à la ligne suivante dans la feuil2.

Pour terminer, j’ai mis dans le tableau de la feuil3 une colonne « A » « Commentaires » en plus qui mettra le résultat de la comparaison pour chaque ligne :

- Existe en Feuil1 et en Feuil2, données équivalentes.
- Existe en Feuil1 et en Feuil2, données différentes.
- Existe en Feuil1, n’existe pas en Feuil2.
- Existe en Feuil2, n’existe pas en Feuil1.

Je vous joins mon classeur avec feuille1, feuille2 et feuille3.

Je vous remercie d'avance pour votre aide en espérant que ma demande est bien claire !

Bien cordialement,