Déplacer une ligne sous condition

Je reviens avec le même problème en fait qui est assez simple car je n'ai pas eu la réponse qui me fallait

Je réalise un tableau simple avec deux feuilles: l'une est nommée "Liste" l'autre "fini".

Je souhaite déplacé les lignes de la feuille 1 à la feuille 2 lorsque la colonne D est renseignée fini.

Les deux feuilles ont la même structure.

La ligne déplacée doit être effacée de la feuille source "Liste"

Les lignes déplacées s'ajoutent les unes aux autres dans la feuille de destination

Je n'y connais rien en bva!!

Merci d'avance pour votre aide.

22tableau-faq.zip (2.08 Ko)

Voici une ligne de code que j'ai placé dans une macro mais il m'indique des erreurs de syntaxe il ne reconnait pas worksheet

Sub Macro1()

Dim Ws As Worksheets 'déclare la variable OA (suivi des créances)

Dim OC As Worksheets 'déclare la variable OC (onglet fini)

Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs)

Dim I As Long 'déclare la variable I (Incrément)

Dim DEST As Range 'déclare la variable DEST (cellule de DESTination)

Set OA = Sheets("suivi des créances") 'définit l'onglet OA

Set OC = Sheets("fini") 'définit l'onglet OC

TV = OA.Range("A2").CurrentRegion 'définit le tableau de valeurs TV (de la ligne 3 à la dernière)

For I = UBound(TV, 1) To 2 Step -1 'boucle inversée de la dernière à la seconde du tableau de valeurs TV

If TV(I, 16) = "FINI" Then 'condition si les valeurs ligne I, colonnes 16 vaut "FINI"

Set DEST = OC.Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0) 'définit la cellule de destination DEST

OA.Rows(I + 2).Copy DEST 'copie la ligne I+2 et la colle dans DEST

OA.Rows(I + 2).Delete 'supprime la ligne I+2

End If 'fin de la condition

Next I 'prochaine ligne de la boucle

End Sub

Merci d'avance pour votre aide!!!

Rechercher des sujets similaires à "deplacer ligne condition"