Selection multiple

Bonjour,

J'ai besoin de copier toutes ces plages sur une autre feuille, et j'aimerais le faire en une seule fois, mais je n'arrive pas à trouver une solution ... J'ai bien trouvé cette solution, qui m'avais l'air simple, mais je n'arrive pas à l'adapter à cause de mes variables : Range("A1:A5,D7,E1:E10").Select

Voici mes lignes :

Range(Cells(LigneBas, 1), Cells(Debut, 1)).Select

Range(Cells(LigneBas, 4), Cells(Debut, 4)).Select

Range(Cells(LigneBas, 5), Cells(Debut, 5)).Select

Range(Cells(LigneBas, 11), Cells(Debut, 11)).Select

Range(Cells(LigneBas, 16), Cells(Debut, 16)).Select

Range(Cells(LigneBas, 21), Cells(Debut, 21)).Select

Range(Cells(LigneBas, 23), Cells(Debut, 23)).Select

Range(Cells(LigneBas, 26), Cells(Debut, 26)).Select

Si jamais vous pouvez me donner un exemple, ne serais ce qu'avec les deux premières lignes, ça serais bon pour moi !

en vous remerciant,

Bonjour,

Pour commencer, il est inutile de "sélectionner" les données, tu peux donc supprimer le "Range("TaPlage").select" et faire directement "Range("TaPlage").copy".

Ensuite, tu peux mixer tes 2 écritures :

Range("A" & LigneBas & ":A" & Debut & ",D" & LigneBas & ":E" & Debut).Copy

Je te remercie !

Je vais essayer, et puis je clôturerais le sujet si c'est bon pour moi !

Bonjour,

Pour rassembler plusieurs range je préfère utiliser Union :

Dim allRange As Range, eachRange As Range
Set allRange = Union(Range("A1:A5"), Range("D7"), Range("E1:E10"))
For Each eachRange In allRange
    eachRange.Copy Destination:=Sheets(2).Range(eachRange.Address)
Next

Ce code copie colle les cellules choisis dans l'union dans la page 2

J'ai réussi avec la première solution, merci encore !

Je vais essayer "l'Union", voir si j'arrive à comprendre comment ça fonctionne !

Je vous remercie encore,

Rechercher des sujets similaires à "selection multiple"