Je suis nouveau à VBA. J'essaye de copier des colonnes d'un classeur à un autre classeur. Ci-dessous est le sous j'essaie d'utiliser, mais obtenir une erreur de "erreur de temps d'exécution 9 - indice hors de portée". Aucune suggestion?VBA: plage de copie. erreur d'exécution 9 - indice en dehors de la plage
Sub copydata(wbSource As String, wsSource As String, rangeSource As String, wbDest As String, wsDest As String, rangeDest As String)
Workbooks(wbSource).Worksheets(wsSource).Range(rangeSource).copy Destination:=Workbooks(wbDest).Worksheets(wsDest).Range(rangeDest)
End Sub
Sub result()
' I also tried to set wsSource and wsDest to 1 but still doesn't work
Call copydata("es.csv", "es", "A:B", "Workbook1.xlsm", "result", "A:B")
End Sub
Merci
EDIT: Ils sont dans le même répertoire. Et je créer le module dans Workbook1.xlsm
L'un des classeurs/feuilles de calcul n'existe pas. –
S'il vous plaît vérifier l'édition –
Il ne suffit pas qu'ils sont «dans le même dossier». Ils doivent être dans le même espace de travail afin de référencer un autre classeur (par exemple .csv) d'un autre sans utiliser de références externes entièrement qualifiées. – Jeeped