Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
J'utilise 2 classeurs
- Le classeur 1 a un numéro dans la colonne C5:C1000 et une date dans la colonne AH5:AH1000
- Le classeur 2 à un numéro dans la colonne E7:E1000
Si le numéro de la colonne C du classeur 1 est égale au numéro de la colonne E du classeur 2, je souhaite récupérer la date de la colonne AH correspondant au numéro dans le classeur 2
Comment puis je faire cela via une boucle?
Merci pour votre aide!
Un petit essai en pièce jointe. Vois si cela peut t'aider et n'hésite pas à poser des questions 🙂
@+
EDIT : Le nom du Classeur1 dans la formule du Classeur2 est à mettre à jour dans la cellule G16 de jeanphi_Classeur2 : Formule (en F2) : =INDEX(jeanphi_Classeur1!Dates;EQUIV($E2;jeanphi_Classeur1!Numeros;0))
En pièce jointe, tu as un zip contenant tes 2 fichiers (jeanphi_Classeur1 et jeanphi_Classeur2).
Si tu ouvres le classeur 2 (celui qui recherche les données), le classeur 1 s'ouvre automatiquement (à condition qu'ils soient tous les deux dans le même répertoire), mais si tu ouvres en premier le classeur 1 (ton classeur contenant tes données brutes), le classeur 2 ne s'ouvre pas automatiquement.
Ceci étant dit, tu trouveras dans jeanphi_Classeur2 un module ConstantesEtVariablesGlobales qui contient :
Tu peux les supprimer si tu souhaites les coder en "dur".
Dans le même classeur, ThisWorkbook contient les instructions qui permettent d'ouvrir jeanphi_Classeur1 ; tu modifieras le chemin menant à ton fichier s'il n'est pas le même que celui de jeanphi_Classeur2 et son nom quand tu te seras approprié le code :
Puis vient le code du bouton de commande créé par l'intermédiaire de la "boîte à outils Contrôles" de la barre d'outils "Visual Basic", qui remplit les champs "Date" (colonne F de jeanphi_Classeur2.xls) :
Code:
[COLOR="Blue"]Private Sub[/COLOR] CommandButton1_Click()
[COLOR="Green"]'[/COLOR]
[COLOR="blue"]Dim[/COLOR] PlageDest [COLOR="blue"]As[/COLOR] Range
[COLOR="blue"]Dim[/COLOR] PlageSource [COLOR="blue"]As[/COLOR] Range
[COLOR="blue"]Dim[/COLOR] CSource [COLOR="blue"]As[/COLOR] Range
[COLOR="blue"]Dim[/COLOR] CDest [COLOR="blue"]As[/COLOR] Range
[COLOR="blue"]Dim[/COLOR] CFound [COLOR="blue"]As[/COLOR] Range
[COLOR="green"]'[/COLOR]
[COLOR="Blue"]Set[/COLOR] PlageDest = Range("F7:F" & Range("E65536").End(xlUp).Row)
[COLOR="blue"]With[/COLOR] Workbooks(NomFichier1).Sheets("Feuil1")
[COLOR="blue"]Set[/COLOR] PlageSource = .Range("C5:C" & .Range("C65536").End(xlUp).Row)
[COLOR="blue"]End With[/COLOR]
[COLOR="blue"]For Each[/COLOR] CDest In PlageDest.Offset(, -1)
[COLOR="blue"]Set[/COLOR] CFound = PlageSource.Find(CDest.Value, LookIn:=xlValues)
[COLOR="blue"]If[/COLOR] Not CFound [COLOR="blue"]Is Nothing Then[/COLOR]
CDest.Offset(, 1) = CFound.Offset(, 31).Value
[COLOR="blue"]End If[/COLOR]
[COLOR="blue"]Next[/COLOR] CDest
[COLOR="blue"]End Sub[/COLOR]
En espérant que cela te convienne 🙂 , sinon dis-moi, je suis prêt à faire plus simple mais moins adaptable 😉
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD