bonjour Etienne Pernelle, salut Optimix,
Set plagecopie = Worksheets("GRAND LIVRE").Range("zonecopie").SpecialCells(xlCellTypeVisible).Cells(1, 1)
plagecopie.PasteSpecial Paste:=xlPasteValues
je pense que cela suffit, avec "plagecopie", si cela passe la première ligne sans faute (s'il n'y a pas une cellule visible), VBA sait déjà la feuille et la cellule. Si cela ne fonctionne pas encore, peut-être qu'il faut répéter la ligne pour copier (ThisWorkbook.Sheets("SAISIE").Range("Tableausaisie").Rows("1:" & lastrow1 - 16).Copy) juste en face du "PasteSpecial"