VBA copy

Le
Michelb
Bonjour à tous
L'instruction:
Worksheets(SourceSheet).range("A1:T44").Copy _
Destination:=Worksheets(aSheet).Range("A1")
fonctionne sans problème
mais
Worksheets(SourceSheet).range(cells(1,1),cells(44,20).Copy _
Destination:=Worksheets(aSheet).Range(cells(1,1)
ne fonctionne pas
Si qqu'un peut me donner une solution, et éventuellement une fonction pour
transformer cells(r,c) en référence de type A1, je lui en serais
reconnaissant
michelB
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
papou
Le #1268640
Bonjour
Il te manque une parenthèse sur cette ligne pour fermer Range :
Worksheets(SourceSheet).range(cells(1,1),cells(44,20)).Copy

Cordialement
Pascal


"Michelb" c6aq18$5bt$
Bonjour à tous
L'instruction:
Worksheets(SourceSheet).range("A1:T44").Copy _
Destination:=Worksheets(aSheet).Range("A1")
fonctionne sans problème
mais
Worksheets(SourceSheet).range(cells(1,1),cells(44,20).Copy _
Destination:=Worksheets(aSheet).Range(cells(1,1)
ne fonctionne pas
Si qqu'un peut me donner une solution, et éventuellement une fonction pour
transformer cells(r,c) en référence de type A1, je lui en serais
reconnaissant
michelB




garnote
Le #1268637
Salut Michelb,

Papou l'a dit; il te manquait une parenthèse.
Tu pourrais aussi utiliser cette syntaxe sans oublier de mettre
un espace entre Copy et Worksheets("Feuil2").Cells(1, 1).
Le _ est là pour indiquer un saut de ligne.

Sub CopieColle()
Worksheets("Feuil1").Range(Cells(1, 1), Cells(44, 20)).Copy _
Worksheets("Feuil2").Cells(1, 1)
End Sub

Serge

"Michelb" c6aq18$5bt$
Bonjour à tous
L'instruction:
Worksheets(SourceSheet).range("A1:T44").Copy _
Destination:=Worksheets(aSheet).Range("A1")
fonctionne sans problème
mais
Worksheets(SourceSheet).range(cells(1,1),cells(44,20).Copy _
Destination:=Worksheets(aSheet).Range(cells(1,1)
ne fonctionne pas
Si qqu'un peut me donner une solution, et éventuellement une fonction pour
transformer cells(r,c) en référence de type A1, je lui en serais
reconnaissant
michelB




garnote
Le #1268626
Le _ est là pour indiquer un saut de ligne. !!!


On peut écrire une instruction sur plusieurs lignes en
utilisant un espace suivi d'un caractère de soulignement .

Sub CopieColle()
Worksheets("Feuil1").Range(Cells(1, 1), Cells(44, 20)).Copy _
Worksheets("Feuil2").Cells(1, 1)
End Sub

Michelb
Le #1268616
Merci à toi et à garnote pour vos réponses rapides.
Mais le problème ne vient pas de la parenthèse absente(mauvais copier
coller), excel m'aurait d'ailleurs notifier une erreur.
Il semble bien que seule la syntaxe de type "A1" soit acceptée dans ce cas.
Je suis sous Windows XP SP1 et Office Pro XP(sans SP)
michelB

"papou" news:
Bonjour
Il te manque une parenthèse sur cette ligne pour fermer Range :
Worksheets(SourceSheet).range(cells(1,1),cells(44,20)).Copy

Cordialement
Pascal


"Michelb" c6aq18$5bt$
Bonjour à tous
L'instruction:
Worksheets(SourceSheet).range("A1:T44").Copy _
Destination:=Worksheets(aSheet).Range("A1")
fonctionne sans problème
mais
Worksheets(SourceSheet).range(cells(1,1),cells(44,20).Copy _
Destination:=Worksheets(aSheet).Range(cells(1,1)
ne fonctionne pas
Si qqu'un peut me donner une solution, et éventuellement une fonction
pour


transformer cells(r,c) en référence de type A1, je lui en serais
reconnaissant
michelB








papou
Le #1268612
Re
Dans ces conditions modifies comme cela :
Dim PlgSource$
PlgSource = Range(Cells(1, 1), Cells(44, 20)).Address
Worksheets(SourceSheet).Range(PlgSource).Copy _
Destination:=Worksheets(aSheet).Cells(1, 1)

Cordialement
Pascal

"Michelb" c6aq18$5bt$
Bonjour à tous
L'instruction:
Worksheets(SourceSheet).range("A1:T44").Copy _
Destination:=Worksheets(aSheet).Range("A1")
fonctionne sans problème
mais
Worksheets(SourceSheet).range(cells(1,1),cells(44,20).Copy _
Destination:=Worksheets(aSheet).Range(cells(1,1)
ne fonctionne pas
Si qqu'un peut me donner une solution, et éventuellement une fonction pour
transformer cells(r,c) en référence de type A1, je lui en serais
reconnaissant
michelB




Michelb
Le #1268596
Effectivement c'est La solution. Je te remercie, habituellement je développe
des applications sous Delphi. Je ne comprends pas bien la subtilité de la
chose mais l'important c'est que ça fonctionne.
Encore merci
michelB

"papou" news:
Re
Dans ces conditions modifies comme cela :
Dim PlgSource$
PlgSource = Range(Cells(1, 1), Cells(44, 20)).Address
Worksheets(SourceSheet).Range(PlgSource).Copy _
Destination:=Worksheets(aSheet).Cells(1, 1)

Cordialement
Pascal

"Michelb" c6aq18$5bt$
Bonjour à tous
L'instruction:
Worksheets(SourceSheet).range("A1:T44").Copy _
Destination:=Worksheets(aSheet).Range("A1")
fonctionne sans problème
mais
Worksheets(SourceSheet).range(cells(1,1),cells(44,20).Copy _
Destination:=Worksheets(aSheet).Range(cells(1,1)
ne fonctionne pas
Si qqu'un peut me donner une solution, et éventuellement une fonction
pour


transformer cells(r,c) en référence de type A1, je lui en serais
reconnaissant
michelB








Publicité
Poster une réponse
Anonyme