erreur 1004 : la méthode paste de la classe worksheet a échouée

AQSE

XLDnaute Nouveau
Bonjour !

Voila, j'ai une macro qui me pose problème. Quand je la lance il me dit "erreur 1004 : la méthode Paste de la classe Worksheet a échouée"
Il bloque à la ligne ActiveSheet.Paste.

Si quelqu'un voit mon erreur ou a une idée ....n'hésitez pas !

Code:
Sub nouvelle_entree()

'Sélection du classeur puis de la feuille concernée par cette macro
Windows("Fichier enregistrement extrusion").Activate
Sheets("SIDEL 1").Activate


    'On enlève le filtrage automatique
    Rows("26:26").Select
    Selection.AutoFilter
    

 'Affiche le tableau de référence qui était masqué
    Cells.Select
    Selection.EntireRow.Hidden = False
    
            'recherche de la dernière ligne dans la base pour y coller un nouveau tableau
            Dim L As Long  'Dimensionne et déclare la variable L
        
            'la recherche de la dernière ligne libre de la feuille se fait uniquement une recherche sur la colonne A (ici : Date)
            Windows("Fichier enregistrement extrusion").Activate
            L = Sheets("SIDEL 1").Range("A26").End(xlDown).Row + 1   'A27= 1ère ligne dispo aprés la ligne de titre /   variable L  = Ligne de la dernière cellule utilisée en colonne A
        
                    'copier les champs à remplir qui se trouvent dans la partie masquée du fichier
                    'Sheets("SIDEL").Range("A5:BE16").Select
                    ThisWorkbook.Worksheets("SIDEL 1").Range("A5:BE16").Select
                    Selection.Copy

                    'coller à partir de la dernière ligne de libre dans le fichier
                    Sheets("SIDEL 1").Cells(L, 1).Select 'Selection de l'endroit ou il va coller
                    ActiveSheet.Paste 'Coller
                    'ActiveWorkbook.Save

    ' Masque le tableau de référence
    Rows("1:16").Select
    Selection.EntireRow.Hidden = True
    
    
    
    'On remet le filtrage automatique
    Rows("26:26").Select
    Selection.AutoFilter
    
    'On sélectionne la case dans laquelle les chefs de quart doivent entrer la date du jour
    Sheets("SIDEL 1").Cells(L, 1).Select


End Sub


Merci d'avance.


AQSE
 

Raja

XLDnaute Accro
Re : erreur 1004 : la méthode paste de la classe worksheet a échouée

Bonjour,

Veux-tu remplacer les lignes suivantes et de nous tenir au courant du résultat :
Code:
ThisWorkbook.Worksheets("SIDEL 1").Range("A5:BE16").Select
Selection.Copy
'coller à partir de la dernière ligne de libre dans le fichier
Sheets("SIDEL 1").Cells(L, 1).Select 'Selection de l'endroit ou il va coller
ActiveSheet.Paste 'Coller
par :
Code:
Sheets("SIDEL 1").Range("A5:BE16").Copy Destination:=Sheets("SIDEL 1").Cells(L, 1)

PS : vérifie bien le nom de la feuille pour savoir si celui-ci est bien orthographié comme il faut dans le code.
 
Dernière édition:

vbacrumble

XLDnaute Accro
Re : erreur 1004 : la méthode paste de la classe worksheet a échouée

Bonjour


Il se passe quoi avec ton code modifié de la sorte ?

Code:
Sub nouvelle_entree()
Dim L As Long
With Windows("Fichier enregistrement extrusion")
.Activate
    With .Sheets("SIDEL 1")
        .Rows("26:26").AutoFilter
        .Cells.EntireRow.Hidden = False
        L = .Range("A26").End(xlDown).Row + 1
        .Range("A5:BE16").Copy
        .Cells(L, 1).Paste
        .Rows("1:16").EntireRow.Hidden = True
        .Rows("26:26").AutoFilter
        .Cells(L, 1).Select
    End With
End With
End Sub
 

job75

XLDnaute Barbatruc
Re : erreur 1004 : la méthode paste de la classe worksheet a échouée

Bonjour à tous,

Il me semble que le problème doit venir de là :

Code:
L = Sheets("SIDEL 1").Range("A26").End(xlDown).Row + 1

Si la dernière cellule occupée est A26 (ou avant A26), L prend la valeur 65537, et cette ligne n'existe pas...

Il faut écrire en fait :

Code:
L = Sheets("SIDEL 1").Range("A65536").End(xlUp).Row + 1

Mais comme signalé par vbacrumble, épurez le code de tous ces Select et Sheets inutiles car c'est bien laid.

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 379
Messages
2 087 763
Membres
103 661
dernier inscrit
fcleves