OVH Cloud OVH Cloud

copier en vba

3 réponses
Avatar
jack
Bonjour à tous,
J’aimerais pouvoir me positionner dans une cellule et copier les 70
cellules suivantes. J’ai trouvé le code suivant,

Range("L2:L70").Select
Selection.Copymais

Mais cela m’oblige à sélectionner une plage désignée. Donc lorsque je me
positionne dans n’importe laquelle cellule je veux pouvoir copier les 70
suivantes.
Merci de votre aide.

3 réponses

Avatar
Clément Marcotte
Bonjour,

Manque un détail. Les 70 cellules suivantes, sont-elles en ligne ou en
colonne ?


"jack" a écrit dans le message de
news:
Bonjour à tous,
J’aimerais pouvoir me positionner dans une cellule et copier les 70
cellules suivantes. J’ai trouvé le code suivant,

Range("L2:L70").Select
Selection.Copymais

Mais cela m’oblige à sélectionner une plage désignée. Donc lorsque
je me

positionne dans n’importe laquelle cellule je veux pouvoir copier
les 70

suivantes.
Merci de votre aide.



Avatar
jack
elles sont en colonne

"Clément Marcotte" wrote:

Bonjour,

Manque un détail. Les 70 cellules suivantes, sont-elles en ligne ou en
colonne ?


"jack" a écrit dans le message de
news:
Bonjour à tous,
J’aimerais pouvoir me positionner dans une cellule et copier les 70
cellules suivantes. J’ai trouvé le code suivant,

Range("L2:L70").Select
Selection.Copymais

Mais cela m’oblige à sélectionner une plage désignée. Donc lorsque
je me

positionne dans n’importe laquelle cellule je veux pouvoir copier
les 70

suivantes.
Merci de votre aide.







Avatar
Michel Gaboly
Bonsoir,

Sauf exception, c'est une mauvaise idée de Copier des cellules en VBA.
Dans de nombreux cas, cela a pour effet notable de ralentir le
traitement. En effet, manipuler les propriétés est en général bien +
efficace.

Par exemple, pour récupérer en A1 à A70 de la feuille 2, la valeur des
70 cellules en dessous de la feuille active :

With ActiveCell
Sheets("Feuil2").Range("A1:A70") = Range(.Offset(1), .Offset(70)).Value
End With

Pour récupérer les formules au lieu des valeurs :

With ActiveCell
Sheets("Feuil2").Range("A1:A70").Formula = Range(.Offset(1),
.Offset(70)).FormulaLocal
End With

L'instruction avant le "End With" se termine par FormulaLocal, car avec
Formula, on récupère la version en anglais de tou les noms de fonctions
à l'intérieur des formules, ce qui se traduit par de nombreux "#NOM?".

NB - Dans les 2 cas, l'instruction entre "With ..". et "End With" doit
être sur une seule ligne.


elles sont en colonne

"Clément Marcotte" wrote:


Bonjour,

Manque un détail. Les 70 cellules suivantes, sont-elles en ligne ou en
colonne ?


"jack" a écrit dans le message de
news:

Bonjour à tous,
J’aimerais pouvoir me positionner dans une cellule et copier les 70
cellules suivantes. J’ai trouvé le code suivant,

Range("L2:L70").Select
Selection.Copymais

Mais cela m’oblige à sélectionner une plage désignée. Donc lorsque


je me

positionne dans n’importe laquelle cellule je veux pouvoir copier


les 70

suivantes.
Merci de votre aide.








--
Cordialement,

Michel Gaboly
www.gaboly.com