OVH Cloud OVH Cloud

sélectionner un champ dans une macro

2 réponses
Avatar
Daniel
Bonjour à tous

Un petit coup de main S.V.P.

Dans une macro je voudrais sélectionner un champ et le recopier a un autre
endroit.
La sélection doit être à partir de l'endroit où est mon curseur jusque-là
cellule A2.

Merci

2 réponses

Avatar
Clément Marcotte
Bonjour,

Comme dit Michel Gaboly, un peu plus haut/plus bas, il n'est pas
forcément nécessaire de passer par le copier-coller.


Pas testé, mais cela devraitmarcher. Par exemple, pour copier de la
feuille active à la feuille 2.

Sub copier()
derniereligne = activecell.row
dernierecolonne= activecell.column
'Boucle sur les lignes de la
'feuille active, à partir de la deuxième ligne
'because le 2 de a2
For i = 2 to derniereligne
'Boucle sur les colonnes de la
'feuille active à partir de la première colonne
'because le a de a2
For j = 1 to derniere colonne
sheets("Feuil2").cells(i,j).value = activesheet.cells(i,j).value
next
next
end sub

Si la plage de destination n'a pas le même adresse, on peut
ajouter/retrancher une constante aux compteurs pour tenir compte du
décalage.

Par exemple pour avoir la copie esur la feuille 2 une ligne plus haut
et 5 colonnes à droite

sheets("Feuil2").cells(i-1,j+5).value = activesheet.cells(i,j).value

Si on ne change pas de feuille, il n'est pas nécessaire de mettre le
nom de la feuille.

Pour rester sur la même feuille, mais 5 lignes plus bas et 13 colonnes
à droite

cells(i+5,j+13).value = cells(i,j).value


"Daniel" a écrit dans le message de
news:CvdGd.23768$
Bonjour à tous

Un petit coup de main S.V.P.

Dans une macro je voudrais sélectionner un champ et le recopier a un
autre

endroit.
La sélection doit être à partir de l'endroit où est mon curseur
jusque-là

cellule A2.

Merci




Avatar
Daniel
Bonjour
Je m'explique un peu plus!!
Présentement j'ai les lignes suivantes

Range("M1").Select
Selection.End(xlDown).Select
ActiveCell(1, -2).Select
Range(Selection, Selection.End(xlUp)).Select
Range(Selection, Selection.End(xlUp)).Select
Range(Selection, Selection.End(xlToLeft)).Select

Cela place mon curseur à la dernière cellule de la colonne M. et
après sélectionne a partir la deuxième cellule a droit (de M) jusque-là A1.

je voudrais que cela soit jusqu'à A2 (pas la première ligne A2:M2).

Merci pour votre support. :-)

"Daniel" a écrit dans le message de news:
CvdGd.23768$
Bonjour à tous

Un petit coup de main S.V.P.

Dans une macro je voudrais sélectionner un champ et le recopier a un autre
endroit.
La sélection doit être à partir de l'endroit où est mon curseur jusque-là
cellule A2.

Merci