Pb pour copier des cellules

A

Alex

Guest
Je désire copier une plage de cellule en fonction d'une variable (i):

Workbooks(ClasseurOrigine).Worksheets(1).Range(Cells(5, (2 * i) + 1), Cells(57, (2 * i) + 1)).Copy

et je me fais refuler : Erreur d'execution '1004'

alors que :

Workbooks(ClasseurOrigine).Worksheets(1).Range("A1:G57").Copy

Ca marche .

Auriez vous une solutions ?
Je vous en remercie d'avance .
 
@

@+Thierry

Guest
Salut Alex, le Forum

Je viens de tester çà juste pour le "i"...

Sub test()
Dim i As Byte
i = 1
Worksheets(1).Range(Cells(1, (2 * i) + 1), Cells(57, (2 * i) + 1)).Copy _
(Worksheets(2).Range("A1"))
End Sub

Cà fonctionne... et çà devrait fonctionner en multi-workbooks... A mon avis soit ton "i" n'est pas encore initialisé au moment où ce code tourne ou bien il dépasse 256 en étant multiplié par deux plus un, ou encore c'est la partie réception, que tu n'as pas mise ici, qui foire...

Bon Courage
@+Thierry
 
A

Alex

Guest
Merci pour la reponse mais j'ais un pb en multi-workbooks:

J'ais fais un simple teste est je n'est tjrs pas reussit a copier une plage de
cellules provenant d'un autre classeur que le classeur actif (Thisworkbook)

Classeur actif: ClasseurA
Classeur ou l'on veut copier la plage de cellules: ClasseurB

'On écrit dans le classeurA:

Private Sub CommandButton1_Click()
Dim i As Integer
i = 1

Workbooks(ClasseurA).Worksheets(1).Activate
Worksheets(1).Range(Cells(1, i), Cells(57, i)).Copy 'Ca Marche (ton test)

Workbooks(ClasseurB).Worksheets(1).Activate
Worksheets(1).Range(Cells(1, i), Cells(57, i)).Copy 'Ca plante et ça me fait ...
Workbooks(ClasseurB).Worksheets(1).Activate
Worksheets(1).Range("A1:C3").Copy 'Ca Marche

End Sub

Je m'arrache les cheveux à comprendre pouquoi ça ne marche pas toutes aide me rendrais un fier service !!!

Merci
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 305
Messages
2 087 084
Membres
103 459
dernier inscrit
Arnocal