Boucle VBA copie sous condition

Salut le forum,

Tout d'abord merci à vous du temps pris pour aider les débutants dans mon genre!

Le souci est (classiquement) une boucle de copie qui ne tourne pas rond: 1ère copie OK puis plus rien...

Pour plus de facilité vous trouverez le fichier test en PJ.

La feuille d'origine se nomme "mouvements", où je souhaite récupérer le contenu de la colonne D si la colonne C est égale à "95", et si D est non vide;

La feuille de destination est la feuille "notifications", colonne C, ligne 11 et suivantes...

Le code est le suivant:

Sub Opex()

' copie de commentaires de la feuille mouvements vers la feuille notifications

Dim i As Integer
Dim lignecopie As Integer

Sheets("Mouvements").Select

For i = 2 To 100
    If Cells(i, 3).Value = "95" Then ' un nom donné en colonne 3...
        Cells(i, 4).Select ' déclenche la récupération du commentaire éventuel associé en colonne 4
        Selection.Copy 'commentaire copié
        Sheets("Notifications").Select 'nouvelle feuille sélectionnée
        lignecopie = Feuil7.Range("C200").End(xlUp).Row + 10  'sélection de la derniere ligne non vide après le titre de rubrique
        Cells(lignecopie, 3).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
        Application.CutCopyMode = False
    End If
Next i
End Sub

Arriver à faire récupérer au code les intitulés "test 1 , 2, 3 et 4" serait déjà un grand coup de pouce!

De plus, idéalement, le code décalerait la ligne 15 en-dessous de la dernière copie..

Par avance la bise aux contributeurs

Stef

12test.xlsm (28.41 Ko)

Bonjour,

Un essai.

Cdlt.

25test-2.xlsm (37.32 Ko)

Très efficace... et très classe. Merci à toi Jean-Eric !

Rechercher des sujets similaires à "boucle vba copie condition"