Copie multiligne et insertion
Bonjour,
Désolé de vous embêter avec un problème si simple mais je ne comprend pas ou est mon erreur, :oops:
Je cherche à :
- copier des lignes triés,
- les insérer à un autre endroit.
Ça marche avec la copie mais pas avec l'insert ....
Voici mon code :
Code:
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
| Option Explicit
Public FEE As Worksheet
'---------------------------------------------------------------------
Sub main()
Set FEE = ThisWorkbook.Worksheets(1)
Call Copiteur(FEE, "D0003", 6)
End Sub
'---------------------------------------------------------------------
Sub Copiteur(WKS As Worksheet, CodeACopier As Variant, ColloneATrier As Integer, Optional LigneDeDebut As Integer = 3)
'Je Rentre en mémoire la dernière ligne du tableau
Dim DerniereLigne As Integer
DerniereLigne = WKS.Cells(Rows.Count, 1).End(xlUp).Row
'Je filtre sur la feuille voulu, le code voulu dans la collone voulue
WKS.Cells.AutoFilter Field:=ColloneATrier, Criteria1:=CodeACopier
'Je copie les ligne encore visibles (mais pas les deux premieres ou il y a des textes d'entete
WKS.Rows(LigneDeDebut & ":" & WKS.Cells(Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy
'Je colle les ligne copiées en fin de tableau
WKS.Rows(DerniereLigne + 1 & ":" & DerniereLigne + 1).PasteSpecial xlPasteAll ' <--- Ca ça marche
'J'insert les lignes copiées juste avant la dernière
WKS.Rows(DerniereLigne & ":" & DerniereLigne).Insert xlShiftDown ' <--- Ca ça marche pas
'je désactive le filtre
WKS.Cells.AutoFilter
End Sub |