Erreur d'exécution 9 : l'indice n'appartient pas à la sélection

Bonjour à tous,

Ce sujet est mainte fois abordé. J'ai vraiment cherché mais pas trouvé de solution fiable.

Le contexte j'ai mon fichier essai.xlsm qui doit copier les cellules du fichier Sitops.csv.

Pour se faire il va ouvrir le fichier Sitops.csv sélectionner toutes les cellules et les copier dans le fichier essai.xlsm

En pas à pas aucun problème. En exécution automatique sa plante je me met sur mon code de macro relance et aucun problème.

Mon fichier essai.xlsm à comme feuille la feuille test

Mon fichier Sitops.csv la feuille Sitops

Des idées de solutions ?

Merci d'avance

Voici mon code

Sub Copier_Coller_SITOPS()

CreateObject("Shell.Application").Open ("C:\Users\e.devilder\Desktop\Stagiaire Devilder\rapport SITOPS\Sitops.csv")

Application.Wait (Now + TimeValue("0:00:1"))

Dim Cl1 As Workbook

Dim Cl2 As Workbook

Application.Wait (Now + TimeValue("0:00:1"))

Set Cl2 = Workbooks("Sitops.csv")

Set Cl1 = Workbooks("essai.xlsm")

'Workbooks("Sitops.csv").Activate

Cl2.Activate

'Sheets("Feuil1").Activate

Cells.Copy

Cl1.Activate

'Sheets("Feuil2").Activate

Range("A1").Select

ActiveSheet.Paste

'Dim wkbSource As Workbook '# Variable pour le classeur Source

'Dim wksDest As Worksheet '# Variable pour la feuille Destination

'# Déclaration du classeur Source

'Set wkbSource = Workbooks("Sitops.xlsx")

'# Declaration de la feuille Destination

'Set wksDest = ThisWorkbook.Worksheets("test")

'# Pour une cellule (Attention il faut utiliser Cells impérativement et pas Range sauf dans la source où c'est possible)

'wksDest.Cells(1, 1).Value = wkbSource.Worksheets("test").Cells.Value

'# Pour une ligne entière (on "colle" la ligne 3 du classeur source dans la ligne 2 du classeur destination)

'Feuil1.Rows(2).Value = wkbSource.Worksheets("maFeuilleSource").Rows(3).Value

'# On décharge les variables de la mémoire

'Set wksDest = Nothing

'Set wkbSource = Nothing

'

'

'Application.Windows("Sitops").Activate

'Application.Workbooks("Sitops.csv").Activate

'Application.Worksheets("Sitops").Activate

'ActiveSheet.Range("A1").Activate

'Cells.Select

'   Selection.Copy

  '  Windows("test.xlsm").Activate

   ' Range("A1").Select

    'ActiveSheet.Paste

    'Application.CutCopyMode = False

'Worksheets("Sitops").Activate

'ActiveWindow.Close

End Sub

Bonjour,

essaie ceci

Sub Copier_Coller_SITOPS()
    Set Cl1 = ThisWorkbook
    Set ws1 = Cl1.sheets("test") 'feuille test du classeur ouvert (contenant la macro)
    Set Cl2 = Workbooks.Open("C:\Users\e.devilder\Desktop\Stagiaire Devilder\rapport SITOPS\Sitops.csv")
    Cl2.Sheets(1).UsedRange.Copy ws1.Range("A1")
End Sub

Ça marche nickel !!

Je dois juste enregistrer le fichier csv en xlsx mais parfait.

Un grand merci à toi

Rechercher des sujets similaires à "erreur execution indice appartient pas selection"