Bonjour,

Je ne peux pas fournir les classeurs car confidentiels.

J'ai un premier classeur avec une colonne qui comporte des numéros d'identifications. Je dois aller dans un autre classeur où il existe une colonne avec les mêmes numéros et un nom (par exemple "2654-Ours") et copier/coller une information de la ligne correspondante dans mon premier classeur (par exemple copier l'information "Pelage noir" du deuxième classeur dans le premier).

J'aimerai faire une macro pour que à chaque fois qu'un numéro est rentré dans le premier classeur, j'appuie sur mon macro et directement il va chercher l'information correspondante dans le deuxième (qui est relié à une base de donnée).

Le macro que j'ai fait pour l'instant fonctionne en appuyant sur la touche en ayant sélectionné la case où le numéro qu'on veut est présent, le voici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
Sub Copier()
 
    Dim FichierBase As Variant
    Dim FichierCdp As Variant
    Dim Text As String
    Dim TextRecherche As String
    Dim Donnnee As String
    Dim i As Integer
 
    'Acceleration du traitement des données
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
 
 
 
    FichierCdp = ThisWorkbook.FullName
    TextRecherche = ActiveCell.Value
 
 
    i = 1
 
 
    'Ouverture fenêtre de selection du fichier d'entrée
    FichierBase = Application.GetOpenFilename
 
    Do While Cells(i, 5) <> Empty
        Workbooks.Open (FichierBase)
 
        Text = Range("E" & i)
        Donnee = Range("H" & i)
        ActiveWorkbook.Close
        If InStr(1, Text, TextRecherche) Then
            Workbooks.Open (FichierCdp)
            Set FichierCdp.Sheets("Extract Nomcl projets S34") = ActiveSheet
            Range("R" & i) = Donnee
        End If
        i = i + 1
    Loop
End Sub
Le problème est que la boucle ne fait absolument rien, alors qu'elle est censé parcourir tout le deuxième classeur à la recherche du même numéro que le premier et extraite des informations. Je suis absolument débutant en VBA.

Merci de votre aide