Mise à jour, comparaison de deux tableaux et résultat dans un troisième

jujau

XLDnaute Nouveau
Bonjour à tous,

Après avoir lu plusieurs cours de vba, plusieurs sujet sur ce même forum, je me résigne et en appelle à votre aide!
Je suis débutant en vba mais connais correctement l'utilisation d'excel.

Le problème est le suivant :
- je dispose toutes les semaines de plusieurs rapports indiquant les contrats en cours et terminés de différentes agences
- je les centralise à la main (copier/coller donc rapide) dans le fichier en PJ.
- je dois comparer ligne par ligne les nouveaux contrats, les changements (date, % de réussite, valeur) et les contrats annulés
- enfin, je dois les créer un nouveau tableau de résultat propre avec une mention "statut" qui indique devant la ligne si le contrat est nouveau, modifié ou annulé.

Le fichier dispose de 3 feuilles :
- MAJ : la feuille de résultats (avec le bouton Mise à jour qui lance une mini-macro qui coupe/colle l'intégralité de la feuille "semaine" vers la feuille "semaine-1")
- semaine : feuille où je colle les nouveaux rapports bruts
- semaine - : feuille qui conserve les résultats de la semaine précédente pour pouvoir comparer

L'idée est la suivante :
Rechercher la valeur "client/semaine" de la ligne 2 sur la feuille semaine-1
si le "client/semaine" = "client/semaine-1"
alors
si le "contrat/client/semaine" est le même que "contrat/client/semaine-1" (certains clients ont plusieurs contrats)
alors
si le "% de réussite/client/semaine" est le même que "% de réussite/client/semaine-1"
alors copier la ligne "client/semaine" vers la 1ère ligne vide de la feuille "MAJ"
sinon copier la ligne "client/semaine" vers la 1ère ligne vide de la feuille "MAJ"
ET écrire "modifié" dans la première cellule de la même ligne dans la feuille "MAJ"
sinon chercher si une autre valeur "client/semaine" = "client/semaine-1" et effectuer la même action
Sinon copier la ligne "client/semaine" vers la 1ère ligne vide de la feuille "MAJ"
ET écrire "nouveau" dans la première cellule de la même ligne dans la feuille "MAJ"


Enfin, dans l'autre sens, faire une recherche de "client/semaine-1" sur la feuille "semaine", avec la même comparaison du contrat. S'il n'existe plus dans la feuille "semaine", copier la ligne vers la 1ère ligne vide de la feuille "MAJ" en écrivant "annulé" dans la première cellule.


Voilà, j'ai beaucoup écris mais je préfère donner beaucoup de détails pour simplifier la compréhension (et j'ai essayé d'écrire le plus en "langage de code" possible!)

Merci beaucoup
 

Pièces jointes

  • exemple.xls
    43 KB · Affichages: 39
  • exemple.xls
    43 KB · Affichages: 47
  • exemple.xls
    43 KB · Affichages: 47

jujau

XLDnaute Nouveau
Re : Mise à jour, comparaison de deux tableaux et résultat dans un troisième

Bonjour Paritec,

Je ne sais quoi dire... MERCI, un très grand merci, pour l'exactitude de la réponse, la rapidité, tout!
A moi de bien analyser le fonctionnement pour commencer à comprendre le vba :)

Encore merci.
Cordialement,
Julien
 

Discussions similaires