Comparaison de 2 classeurs avec condition

Julie1

XLDnaute Nouveau
Bonjour à toutes et à tous,

j'ai essayé de chercher une solution sur le forum + le net mais je n'ai rien trouver peut être que cela n'est pas possible!!
voici mon problème : j'ai deux classeurs : classeur 1 et classeur 2
dans le classeur 1 j'ai 3 colonnes, et ca sur une trentaine de feuille : une colonne référence, une colonne nom et une colonne note
dans le classeur 2 j'ai une seule colonne référence (sur une seule feuille).

Je voudrais dans un troisième classeur créer une macro (?) qui me compare la colonne référence du classeur 2 à la colonne référence du classeur 1.
si la référence est dans le classeur 1 et dans le classeur 2 et que dans la colonne note la valeur est différente de 1 ou de -1 alors copié le nom se reportant à la référence et l'intitulé de l'onglet sinon ne rien faire. j'ajouterai ensuite un bouton pour lancer la macro (ça je sais faire, c'est le seul truc d'ailleurs que je sache faire en macro :eek:).

j'ai essayer de faire la macro seul (sachant que je n'ai aucune notion de vba seulement un peu d'enregistrement :s)

je sais qu'il faut ouvrir les deux classeurs et donc :

sub macro1()
workbooks open filename "c:...classeur1"
workbooks open filename "c:...classeur2"


Merci beaucoup pour votre aide. je vous joins un petit exemple dans lequel le fichier classeur 1 ne comporte que 2 onglet mais il faudrait pouvoir le faire sur un fichier à plus de 30 feuilles
 

Pièces jointes

  • classeur1.xls
    29.5 KB · Affichages: 44
  • Classeur2.xlsx
    9.7 KB · Affichages: 39
  • classeur1.xls
    29.5 KB · Affichages: 47
  • Classeur2.xlsx
    9.7 KB · Affichages: 46
  • classeur1.xls
    29.5 KB · Affichages: 51
  • Classeur2.xlsx
    9.7 KB · Affichages: 46

Gareth

XLDnaute Impliqué
Re,

Tu vas y arriver :)
Il faut mettre le "\" au bon endroit. Pas dans la fonction Format.
Set Class1 = Workbooks.Open(Filename:=Chemin1 & "\" & Format(Date, "mmm") & ".xls")

Format(Date, "mmm") renvoie "Sept", on y colle devant un "\" et derriere un ".xls"


Pas compris le 2eme probleme ...
 

Julie1

XLDnaute Nouveau
Re : Comparaison de 2 classeurs avec condition

En faite ca marche j'ai déplacé le "\" et je l'ai mis dans le chemin.

Chemin1 = ThisWorkbook.Path & "\"

Merci beaucoup pour toutes ces explications.

Je souhaite rajouter une condition (il faut que pour chaque ligne s'il y a correspondance des références il ne copie les informations que s'il y a un ok dans la colonne R et de la même ligne du classeur 2) mais je cherche d'abord de mon coté si j'arrive à trouver.

Merci :)

oups je n'avais pas vu ton message du 19 à 22h :s
 

Julie1

XLDnaute Nouveau
Re : Comparaison de 2 classeurs avec condition

Je suis désolé mais ce code même s'il fonctionne très bien ne correspond pas à ce que je cherche.
Je m'explique : dans mon dossier j'ai différents fichier excel, certain sont nommé par mois : donc
janvier, février, mars ....
Le classeur qui doit être utilisé pour la macro (ou classeur1) doit être le dernier mois rajouté de l'ordre chronologique. si dans mon dossier j'ai :
janvier
février
avril
juillet

le fichier à utiliser pour effectuer l'étude doit être juillet (même si nous sommes en octobre). Le code que nous avons créé utilise le nom du mois en cours pour le chemin du fichier.

Voila mon idée. Je rentre le nom du classeur que je souhaite utiliser dans la cellule D1, dans notre exemple ce serait juillet. puis ajouter dans le code la valeur de D1 dans le chemin pour l'ouverture du fichier. je pense que nous devons garder le début donc :
chemin1 = ThisWorkbook.Path & "\"
Set Class1 = Workbooks.Open(Filename:=Chemin1 & "\" 'valeur de la cellule D1'

mais rajouter la fin par la valeur de la cellule D1.

Merci de votre aide!



Problème résolu :eek: : j'ai remplacer par
Set Class1 = Workbooks.Open(Filename:=Chemin1 & Range("d1"))

et aussi pour ne pas effacer le contenu de toute la feuille mais seulement des colonnes A et B

ThisWorkbook.Sheets("Feuil1").Range("a:b").Cells.Clear
 
Dernière édition:

Julie1

XLDnaute Nouveau
Re : Comparaison de 2 classeurs avec condition

bonjour,

j'ai un nouveau problème :(
mon fichier fonctionne lorsque le dossier est sur mon bureau mais dès que je le mets en réseau il indique que le chemin .... est introuvable pourtant le chemin qu'il indique est le bon.
je ne comprends pas

Merci à vous pour votre aide

edit : Je suis vraiment désolé d'encombrer le forum :s mais j'ai résolu le problème
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 231
Messages
2 086 442
Membres
103 210
dernier inscrit
Bay onais