Erreur 1004 sur Range.copy

Bonjour à tous,

Voici les étapes de ce que je souhaiterai :

1.Je travaille sur un classeur.

2.Je cree une nouvelle feuille avec un nom particulier

3.J'ouvre un autre classeur.

4.J'aimerai copier un Range particulier d'une feuille particuliere du 2nd classeur, dans la feuille nouvellement créée du 1er classeur.

J'ai commencé à coder mais j'ai une erreur1004 sur le Range.copy

Merci d'avance de votre aide.

Voici ma macro :

Dim DL, DC As Integer

Dim FichierNotes As Variant

Dim xlSheet As Object

Dim NomFeuille As String

Dim X, mm

Dim CS As Workbook 'déclare la variable CS (Classeur Source)

Dim CD As Workbook 'déclare la variable CD (Classeur Destination)

Set CD = ThisWorkbook 'définit le classeur destination CD celui de Tableau-General

'On recupere le fichier des notes

FichierNotes = Application.GetOpenFilename

If FichierNotes = False Then Exit Sub

Set CS = Workbooks.Open(FichierNotes) 'définit le classeur source CS

'On va chercher la derniere ligne du fichier ouvert

DL = CS.Worksheets("PEDAGOGIE").Cells(Application.Rows.Count, 2).End(xlUp).Row

'On va chercher la derniere colonne du fichier ouvert

DC = CS.Worksheets("PEDAGOGIE").Cells(8, Cells.Columns.Count).End(xlToLeft).Column

'On crée le fichier Excel et on la posisitionne apres la feuille de lancement de macro

NomFeuille = ActiveSheet.Name & " BDD " & CS.Worksheets("PEDAGOGIE").Cells(6, 2).Value

Set xlSheet = CD.Worksheets.Add(After:=ActiveSheet)

xlSheet.Name = NomFeuille

'On enleve la protection de la feuille PEDAGOGIE et on copie le tableau Pedagogie dans notre classeur

CS.Worksheets("PEDAGOGIE").Unprotect "################"

CS.Worksheets("PEDAGOGIE").Range(Cells(8, 1), Cells(DL, DC)).Copy ' <---- l'erreur 1004 est ici

xlSheet.Cells(1, 1).PasteSpecial Paste:=xlPasteFormats

Bonjour,

Vous confondez la propriété "Range" avec la fonction "Range". Ceci sera mieux :

    With CS.Worksheets("PEDAGOGIE")
        Range(.Cells(8, 1), .Cells(DL, DC)).Copy
    End With

Bonjour,

Vous confondez la propriété "Range" avec la fonction "Range". Ceci sera mieux :

    With CS.Worksheets("PEDAGOGIE")
        Range(.Cells(8, 1), .Cells(DL, DC)).Copy
    End With

Merci beaucoup thev !

Effectivement c'est beaucoup mieux.

Rechercher des sujets similaires à "erreur 1004 range copy"