[déplacé VB6 -> VBA] copier/coller dans differentes feuilles

Résolu
rafou29 Messages postés 29 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 14 avril 2010 - 11 mars 2010 à 16:54
rafou29 Messages postés 29 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 14 avril 2010 - 15 mars 2010 à 10:09
Bonjour,

J'ai des problèmes avec un code simple qui me fait tourner en bourrique ...

Objectif:
Je souhaite copier les données de 3 colonnes dans "Sheet1" et les coller dans "Sheet3".

Problème:
Il me fait un copier/coller partiel car il ne transpose mes données qu'une fois sur deux!

Mon code:

Private Sub CommandButton58_Click()

For i = 0 To 30
i = i + 1

Dim r1 As Range, r2 As Range, r3 As Range, myMultiAreaRange As Range
Sheets("Sheet1").Select
Set r1 = Range("C" & i)
Set r2 = Range("D" & i)
Set r3 = Range("F" & i)
Set myMultiAreaRange = Union(r1, r2, r3)
myMultiAreaRange.Select
Selection.Copy

Sheets("Sheet3").Select
Range("B" & i).Select
ActiveSheet.Paste

Next
End Sub

Merci de votre aide

7 réponses

rafou29 Messages postés 29 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 14 avril 2010 1
15 mars 2010 à 10:09
Merci de ton aide lolokun mais j'ai trouvé la réponse à mon problème sur un autre site.

Réponse:

Private Sub CommandButton58_Click()
Sheets("Sheet1").Range("C1:D30,F1:F30").Copy Destination:=Sheets("Sheet3").Range("B1")
End Sub

Simplissime et efficace

Encore merci de ton aide !
3
rafou29 Messages postés 29 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 14 avril 2010 1
12 mars 2010 à 09:42
Up
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 6
12 mars 2010 à 09:58
Bonjour,

A mon avis il y a une ligne de trop :

For i = 0 To 30
i = i + 1


L'expérience, c'est une connerie par jour, mais jamais la même..
0
rafou29 Messages postés 29 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 14 avril 2010 1
12 mars 2010 à 10:14
Je viens d'essayer en retirant le "i = i + 1" mais la macro ne tourne plus et je ne comprend pas comment peux-tu lui dire de copier les données de 0 à 30 si tu ne lui proposes pas de s'incrémenter de 1 à chaque fois ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 6
12 mars 2010 à 10:30
Avec le next à la fin de ta boucle for

L'expérience, c'est une connerie par jour, mais jamais la même..
0
rafou29 Messages postés 29 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 14 avril 2010 1
12 mars 2010 à 10:37
Le hic est qu'avec ma macro tourne mais pas comme je le souhaite et sans elle ne tourne plus et j'obtiens un msg d'erreur "run time error 1004"
une idée ???
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 6
12 mars 2010 à 13:58
Je doute que la 1_re ligne de excel corresponde à 0 (je suis loin d'être un expert en vba...), as-tu essayé en démarrant avec i=1 ?


L'expérience, c'est une connerie par jour, mais jamais la même..
0
Rejoignez-nous