Comparer deux listes des données

Bonjour le forum,

Je voudrais demander votre aide pour résoudre le problème suivant :

Il y a deux groups des données

1. N° de commande (colonne A) et montant engagé (colonne B)

2. N° de commande (colonne D) et montant facturé (colonne E).

Nous parlons des plusieurs centaines des lignes dans chaque group et les longueurs des colonnes A et D sont différentes.

Au niveau théorique, les colonnes A & D doivent être identiques. De-facto, ce n’est pas le cas.

Je voudrais avoir une possibilité d’obtenir quatre groups des données supplémentaires :

A. Dans les colonnes G & H les commandes communes possédant le même numéro (colonnes A & D) où le montant facturé égal à

engagé.

B. Dans les colonnes J & K les commandes communes où les montants engagé et facturé ne sont pas égaux.

C. Dans les colonnes M & N les commandes qui apparaissent dans la colonne D mais il n’y a pas leur jumeaux dans la colonne A.

D. Dans les colonnes P & Q les commandes qui apparaissent dans la colonne A mais il n’y a pas leur jumeaux dans la colonne D.

Est-ce que quelqu’un pourra m’aider avec ça ?

Merci d’avance et bonne journée à tous !

Baton

Bonjour Baton,

Afin que l'on puisse t'aider au mieux, il faudrait que tu joignes une partie de ton fichier pour adapter une solution.

On attends.

Bonjour vba-new,

Merci pour ta réponse. Tu as raison. Je rajoute le fichier. J’espère qu’il soit explicite.

On peut avoir plusieurs factures pour une commande et jamais quelques commandes pour une facture.

En plus, j’ai rajouté une colonne qui devra calculer la différence entre le montant engagé et facturé.

Merci,

Baton

72comparaison.zip (9.87 Ko)

En voilà un fichier explicite !!

Voici ton fichier en retour avec une solution en vba à base de boucle :

147comparaison-v1.zip (13.21 Ko)
vba-new a écrit :

En voilà un fichier explicite !!

Voici ton fichier en retour avec une solution en vba à base de boucle :

vba-new,

le fichier est vraiment explicite et la macro fonctionne très bien!!!

merci beaucoup!

cordialement,

Baton

vba-new,

j'ai essayé ton code et il fonctionne très bien. Par contre, j'ai découvert deux soucis pas prévus:

1. Certaines factures ont plus que deux chiffres après la virgule (par exemple, un produit coûte 15,50 euros et il y a une

réduction de 15,3 %...). Est-ce que c'est possible d'arrondir le montant de deux commandes (engagée et facturé) jusqu'aux deux

chiffres après la virgule?

2. Est-ce qu'il est possible que deux commandes (avec le même numéro) avec la différence inférieure à 0,02 euros

apparaitront dans la rubrique "Correspondance parfaite" pour éviter les situations comme ci-déssous?

N° de commande Engagé Facturé Différence

33682 240,1 240,1 2,84217E-14

33847 1117,6 1117,6 2,27374E-13

Merci d'avance,

Baton

Bonjour Baton,

Essaie en effectuant la manip suivante :

Dans la fonction MtntEngagFactur, remplace :

If flag Then MtntEngagFactur = cpt Else MtntEngagFactur = ""

par :

If flag Then MtntEngagFactur = Round(cpt, 2) Else MtntEngagFactur = ""

M E R C I !

Rechercher des sujets similaires à "comparer deux listes donnees"