Comparaison de deux classeurs Excel
Bonjour a tous ,
Je dois créer une macro qui permet de comparer deux classeurs et récupérer certaines informations qui sont dans le 1er classeur et qui ne sont pas dans le second et ensuite relevés ces informations dans un troisième classeur (comme une sorte d’alerte).
Mais le problème malgré mes recherches, je n’arrive pas à créer la macro qui me permettra d'aller sélectionner les informations que je souhaite.
Le but de la macro c’est de comparer si les identifiant de la colonne B du classeur1.xls se trouvent dans la colonne C du classeur2.xlsx en tenant compte que des 5 derniers chiffres du classeur1.xlsx.
1) Dans le classeur1.xlsx seul les identifiant associés critères : (de Demande CHANGEMENTGCE et CHANGEMENT EDITEUR qui sur la colonne F) m’intéressent donc la sélection se fera que en fonction de ça .Alors on doit sélectionner que ses identifiants et aller comparer au identifiants du classeur2.xlsx.
2) Si on trouve les même identifiants il ne se passera rien, et si on ne les trouve pas il doit relever ces informations non trouvé dans un 3eme classeur.
NB : Le fichier joint classeur2.xlsm ou se trouve la macro que j’ai faite qui permet d’ouvrir le classeur1.xlsx et ouvrir le troisième classeur il me reste le critère de sélection et comparaison qui permet de relevés ces informations qui sont dans le classeur1 et ne sont pas dans le classeur2.
Dans mon cas j’ai mis en jaune les information qui sont dans le classeur1 et classeur2 et en rouge les infos qui doivent aller dans le classeur3(Voir Fichier).
Merci de votre aide
Bonjour
Voici un essai.
Si j'ai bien compris... par rapport à ton exemple en couleur, je trouve une ligne de plus, celle de l'ID 11145 et une de moins, celle de l'ID 39624 qui figure dans la liste de la feuille 2.
Bonjour gmb,
Je te remercie pour ta proposition ,mais en faite ce n'est pas ça l'idée.
alors je rexplique:
Le classeur 3 dois etre inclu dans la macro et la macro doit faire une comparaison en tenant compte que des 5 derniers chiffres des numeros du classeur1 et ensuite ce sont seulement les numeros dont l'intitulé est demande changement editeur ou GCE qui ne sont pas dans le classeur2 qui doivent etre recuperer dans le classeur3 en prenant que les libelés du classeur1 que j'ai mis en couleur verte.
Pour Comprendre L'idée il faut que tu essaye de voir la macro qui est ds le classeur 2 dont le module s'appelle macro_deRECUP.
Je sais que la macro est dificile a comprendre car code pas indenté mais je ne sais pas comment indenter en VBA c'est pour cela que je ne l'ai pas fait.
Merci pour tout
Bonjour gmb,
Tu as compris l'idée merci beaucoup.
Juste que mon boss souhaiterai que ça soit que: c’est quand tu lance la macro la 1ere des choses elle te dirige vers un répertoire où tu peux aller récupérer le classeur1, ensuite tu valide l’ouverture si c’est le bon fichier, sinon tu cherches le bon tu ouvres. (C’est pour cela que j’ai 2 macros dans mon module dont une pour l’ouverture et l’autre pour la recherche).
Le classeur 3 est ajouté directement, son ouverture est automatique car intégrer dans la macro par Workbook.add.
Quand le classeur3 dont la feuille s’appelle alerte est ouverte tu dois avoir une option qui permet de choisir la liste des « demandes de changement Editeur ou GCE » par date. Par exemple que si je ne souhaite pas récupérer ceux de 2011 ou 2012 ou si je veux récupérer que ceux à partir 15/07 au 22/07/13 je peux aussi
Voilà ce qui reste à ajouter dans ta macro pour que tout soit top.
Merci pour tout l’effort que tu es en train de faire pour m’aider et remercie tous les membres du forum qui sont là pour nous aider.
Bonjour,
Pouvez-vous m'aider à ce que le tri par date de mon inputBox marche SVP.
La macro se trouve sur le classeur2.xlsm.Pour que la macro marche ouvrez le classeur1.xlsx, ensuite tourner la macro. Je souhaiterai avoir un inputBox qui me permettra de faire le choix à partir d'une date.
De tel sorte que si je veux que la liste s'affiche je choisis ce que je veux afficher uniquement par exemple: à partir du 01/03/2013 il m'affichera la liste que à partir de cette date jusqu’au jour ou nous somme, s'il y en a, sinon il n'affichera rien.
Ci joint les fichiers: c’est la suite de ce que gmb a fait pour moi.
Merci par avance
Bonjour,
Probleme resolu!
c'etait du a une mauvaise delaration de ma variable.
Merci.