OVH Cloud OVH Cloud

recopie

4 réponses
Avatar
pierre
bonsoir à tous et toutes,
je suis désolé de vous déranger encore
voici une partie de mon code

Sheets("X").Activate
Range("B1:F1").Select
Selection.Copy
Sheets("Y").Activate
Range("A8").Select
ActiveSheet.Paste

il récupère une plage et la colle à partir d'une cellule fixe ici A8 je
voudrais que la fois suivante ce soit en A9 puis en A10 etc...c'est la seule
chose qui change
merci de votre aide
pierre

4 réponses

Avatar
Clément Marcotte
Bonjour,

Pas testé.

mets le premier numéro de ligne à utiliser dans une cellule
inutilisée (ici c1 de "Y")

Sub demenage()
Dim laligne As Long
laligne = Sheets("Y").Range("c1").Value
Sheets("X").Range("B1:F1").Copy
Sheets("Y").Activate
ActiveSheet.Cells(laligne, 1).Select
ActiveSheet.Paste
Sheets("Y").Range("c1").Value = laligne + 1
Application.CutCopyMode = False
End Sub

Il y a sans doute moyen de faire plus court et plus efficace, mais là
je dois retourner travailler.





"pierre" <"xpierre52x"@tiscali.fr> a écrit dans le message de
news:
bonsoir à tous et toutes,
je suis désolé de vous déranger encore
voici une partie de mon code

il récupère une plage et la colle à partir d'une cellule fixe ici A8
je

voudrais que la fois suivante ce soit en A9 puis en A10 etc...c'est
la seule

chose qui change
merci de votre aide
pierre





Avatar
pierre
"Clément Marcotte" a écrit dans le message
news:
Bonjour,

Pas testé.

mets le premier numéro de ligne à utiliser dans une cellule
inutilisée (ici c1 de "Y")

Sub demenage()
Dim laligne As Long
laligne = Sheets("Y").Range("c1").Value
Sheets("X").Range("B1:F1").Copy


je te remercie mais il y a une erreur 9
j'ai rajouté Activate mais là non plus..

Sheets("Y").Activate
ActiveSheet.Cells(laligne, 1).Select
ActiveSheet.Paste
Sheets("Y").Range("c1").Value = laligne + 1
Application.CutCopyMode = False
End Sub

Il y a sans doute moyen de faire plus court et plus efficace, mais là
je dois retourner travailler.





"pierre" <"xpierre52x"@tiscali.fr> a écrit dans le message de
news:
bonsoir à tous et toutes,
je suis désolé de vous déranger encore
voici une partie de mon code

il récupère une plage et la colle à partir d'une cellule fixe ici A8
je

voudrais que la fois suivante ce soit en A9 puis en A10 etc...c'est
la seule

chose qui change
merci de votre aide
pierre








Avatar
Clément Marcotte
Bonjour,

Chez mois cela marche avec Excel 2002. Remplace X et Y par le vrai nom
des feuilles, si ce ne sont pas les vrais noms.

Sinon, si tu as une autre version que 2002, va falloir que quelqu'un
d'autre teste chez lui.


"pierre" <"xpierre52x"@tiscali.fr> a écrit dans le message de
news:

"Clément Marcotte" a écrit dans le
message

news:
Bonjour,

Pas testé.

mets le premier numéro de ligne à utiliser dans une cellule
inutilisée (ici c1 de "Y")

Sub demenage()
Dim laligne As Long
laligne = Sheets("Y").Range("c1").Value
Sheets("X").Range("B1:F1").Copy


je te remercie mais il y a une erreur 9
j'ai rajouté Activate mais là non plus..

Sheets("Y").Activate
ActiveSheet.Cells(laligne, 1).Select
ActiveSheet.Paste
Sheets("Y").Range("c1").Value = laligne + 1
Application.CutCopyMode = False
End Sub

Il y a sans doute moyen de faire plus court et plus efficace, mais



je dois retourner travailler.





"pierre" <"xpierre52x"@tiscali.fr> a écrit dans le message de
news:
bonsoir à tous et toutes,
je suis désolé de vous déranger encore
voici une partie de mon code

il récupère une plage et la colle à partir d'une cellule fixe
ici A8



je
voudrais que la fois suivante ce soit en A9 puis en A10
etc...c'est



la seule
chose qui change
merci de votre aide
pierre












Avatar
Clément Marcotte
Bonjour,

Il y a sans doute moyen de faire plus court et plus efficace


Sub demenage1()
Dim laligne As Long, i As Byte
laligne = Sheets("Y").Range("c1").Value
For i = 1 To 5
Sheets("Y").Cells(laligne, i).Value = _
Sheets("X").Cells(1, i + 1)
Next
Sheets("Y").Range("c1").Value = laligne + 1
End Sub