Erreur définie par l'application ou par l'objet

Bonjour j'ai un message d erreur 1004 qui s'affiche : 'erreur définie par l'application ou par l'objet ' au niveau de la méthode de la ligne ActiveWorkbook.Worksheets("Sheet1").Range(...).Copy et je ne sais pas exactement ou est le problème . sachant que je suis débutante en vba pourriez vous m'aider a résoudre ce problème

voici le code ( c est un code d'importation et de lecture de données d'un fichier Excel a un autre)

Private Sub CommandButton1_Click() ' method pour importer le fichier
Dim fichier_choisi As String
    fichier_choisi = Application.GetOpenFilename("files(.), .")

    If (LCase(fichier_choisi) <> "faux" And fichier_choisi <> "0") Then
        liste.AddItem (fichier_choisi)
    End If
End Sub

Private Sub CommandButton2_Click() 'method pour lire et traiter les données
Dim LastRow As Long
    Dim LastColumn As Long

    Sheets("Feuil1").Cells.Clear
    Workbooks.Open liste.List(0)
    LastRow = ActiveSheet.Range("A1").CurrentRegion.Rows.Count
    LastColumn = ActiveSheet.Range("A1").CurrentRegion.Columns.Count

    ActiveWorkbook.Worksheets("Sheet1").Range(Cells(1, 1), Cells(LastRow, LastColumn)).Copy Application.ThisWorkbook.Worksheets("Feuil1").Range("A1") 'c'est la ou j'ai le problème
    ActiveWorkbook.Close SaveChanges:=False
End Sub

merci

Bonjour safwa,

ric

bonjour ric

est ce que vous avez une idée sur le problème ? pourriez vous m'aider ?

Bonjour safwa,

Il semble y avoir confusion entre "Feuil1" et "Sheet1" <> français et anglais ... j'ai renommé la feuille "MaSheet1" et ceci passe ...

Private Sub CommandButton2_Click() 'method pour lire et traiter les données
   Dim LastRow As Long
   Dim LastColumn As Long

      Worksheets("Feuil1").Cells.Clear
      '    Workbooks.Open liste.List(0)

      LastRow = Worksheets("MaSheet1").Range("A1").CurrentRegion.Rows.Count
      LastColumn = Worksheets("MaSheet1").Range("A1").CurrentRegion.Columns.Count

      Worksheets("MaSheet1").Range(Cells(1, 1), Cells(LastRow, LastColumn)).Copy _
      Worksheets("Feuil1").Range(Worksheets("Feuil1").Cells(1, 1), Worksheets("Feuil1").Cells(LastRow, LastColumn))

   '    ActiveWorkbook.Close SaveChanges:=False
End Sub

A+

ric

bonjour ric

le nom de la feuille est Sheet1 dans le classeur source et Feuil1 dans le classeur cible

j ai essaye de changer ActiveWorkbook.Worksheets("Sheet1") par activeSheet sans même mentionner le nom de la feuille source et ça a bien marche

merci beaucoup pour votre aide

Bonjour safwa,

ric

Rechercher des sujets similaires à "erreur definie application objet"