Bonjour,
Je cherche via une macro à copier les ligne de la feuille "BD" sur la feuille "BDRESULTAT" si la cellule de la colonne A = à la cellule F1 de la feuille DIM.
Voici mon code, cela fonctionne pour la première ligne trouvée mais la macro s’arrête juste après.
Exemple:
Cellule F1 de DIM = bonjour
Il faut chercher dans la colonne A de la feuille BD toutes les lignes où apparait BONJOUR et copier les lignes entières vers la feuille BDRESULTAT dans la prochaine ligne vide.
Qu'est ce qui ne va pas dans mon code?
Attention, je suis novice en VBA alors pas trop de langage super technique svp.
Sub Renouvellement_Norm()
Dim plage As Range, cel As Range
'stop rafraichissement ecran
Application.ScreenUpdating = False
'valeur a chercher
valcherch = Sheets("DIM").Range("F1")
With Worksheets("BD")
'derniere cellule colonne D
derlig = .Range("A" & Rows.Count).End(xlUp).Row
'defintion plage a tester en memoire
Set plage = .Range("A1:A" & derlig)
End With
derlig = 0
With Worksheets("BDRESULTAT")
'test plage
For Each cel In plage
If cel = valcherch Then
'premiere cellule vide apres derniere non vide colonne D
derlig = .Range("A" & Rows.Count).End(xlUp).Row + 1
'premier lancement
If derlig = 2 Then
derlig = 1
End If
'copy ligne entiere
cel.EntireRow.Copy .Range("A" & derlig)
End If
Next cel
End With
'rafraichissement ecran
Application.ScreenUpdating = True
End Sub
merci d'avance