Bonjour tous le monde,

Je suis face à un problème dans mon script de macro (VBA).
Je possède deux classeurs:
- Le premier possède une liste verticale avec:
- Les noms en première colonne
- La date en deuxième colonne
- Une valeur de mesure en troisième colonne

- Le second est sous forme de carte d'identité et donc les noms sont répartis dans le tableur sur plusieurs feuilles. Sous le nom sont située les mesures en tableau

J'aimerai que la macro puisse faire une boucle où elle prend le premier nom de la liste, elle enregistre les valeurs (date et mesure), elle cherche le nom dans le deuxième classeur parmi toute les feuilles et qu'elle puisse entre la date et la valeur mesuré dans la cellule que je veux.

Le script que je vous transmets ci-dessous fonctionne très bien lorsque dans mon deuxième classeur je n'ai qu'une feuille. Seulement lorsque j'ai plusieurs feuilles, j'ai une erreur de recherche.
Est-il possible de pouvoir chercher dans plusieurs feuille ?

Merci d'avance pour votre aide, je vous joint mon script ci-dessous.


Sub Imporation_données()

'''''''''' Nomme les variables

Dim Derligne As Long 'Variable pour le numéro de la dernière ligne
Dim Nom As String 'Variable pour le Nom
Dim varDate As Date 'Variable pour la Date
Dim Mesure As Single 'Variable pour la Mesure

'Active la feuille où les données sont copiées
Workbooks("Trasnfert_données.xlsx").Activate


''''''''''Boucle pour de recherhce et d'importation des valeurs

'Implémente à la variable 'Derligne' la valeur de fin pour la boucle (Feuille 1, derniere cellule)
Derligne = Sheets("Feuil1").Range("A1048576").End(xlUp).Row
'Implémente à la variable 'Ligne' la valeur de départ (ligne où la boucle doit commencer)
Ligne = 2

'Debut de la boucle, jusqu'à ce que ligne équivaut à la dernière ligne de la feuille
Do While Ligne <= Derligne
'Active le classeur où les données sont copiées
Workbooks("Trasnfert_données.xlsx").Activate
'Implémente à la variable 'Nom' la valeur (Feuil1, Cellule[Ligne,colonne])
Nom = Worksheets("Feuil1").Cells(Ligne, 1)
'Implémente à la variable 'varDate' la valeur (Feuil1, Cellule[Ligne,colonne])
varDate = Worksheets("Feuil1").Cells(Ligne, 2)
'Implémente à la variable 'Mesure' la valeur (Feuil1, Cellule[Ligne,colonne])
Mesure = Worksheets("Feuil1").Cells(Ligne, 3)
'Active le classeur où il faut copier les données
Workbooks("BDD_Suivi").Activate

'Recherche la cellule
Cells.Find(What:=Nom, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate

'Importation de la Date

'Déplacer la cellule activer (celle de la recherche)
ActiveCell.Offset(3, 1).Select
'Importe la valeur de la date dans la cellule active
ActiveCell = varDate

'Importation de la Mesure

'Déplacer la cellule activer (celle de la recherche)
ActiveCell.Offset(0, 1).Select
'Donner le nombre de décimale à la cellule active
ActiveCell.NumberFormat = "##0.00"
'Importe la valeur de la date dans la cellule active
ActiveCell = Mesure

'Ajoute à la variable 'Ligne' +1 pour descendre d'une ligne dans le tableau
Ligne = Ligne + 1

'Fin de la boucle
Loop


End Sub