[VBA] selection d'une plage de cellule

Bonjour,

Est-il possible de selectionner une plage de cellule, sans faire appel à range, mais plutot avec cells

En effet, pour utiliser range, il faut changer de page :

Sheets(2).select

Range("A1:B6").select

Alors qu'avec cells, non, ce qui m'arrangerait !!! C'est pour faire un tri par ordre alphabétique de données que j'ai sur une autre page, (la macro automatique, légerement modifiée m'a donné ça :

sheets("Paramétrages").Select

Range("B3:C" & i).Sort Key1:=Range("B2"), Order1:=xlAscending, Key2:=Range( _

"C2"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase _

:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _

DataOption2:=xlSortNormal

)

or mon souci, c'est que cette macro est déclanchée depuis une autre page (qui s'appelle sortie), sur laquelle j'ai mis une macro pour remettre tous les champs à zéro lorsqu'on la selectionne ! du coup, quand je fais sheets("Sortie").Select pour revenir, ça m'efface tout !

J'espère avoir été clair !

Merci par avance

Bonjour IBegin

Pour utiliser range, il faut changer de page : c’est faux !

Vous pouvez être sur une feuille et sélectionner une plage tel que

Au lieu de

Sheets(2).select

Range("A1:B6").select

Faire

Sheets(“toto”). Range("A1:B6").select

Vous serez sur une feuille mais sur l’autre la sélection des cellules changera

Et pour

sheets("Paramétrages").Select

Range("B3:C" & i).Sort Key1:=Range("B2"), Order1:=xlAscending, Key2:=Range( _

"C2"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase _ etc…

Essayez donc

sheets("Paramétrages").Select

sheets(“toto”).Range("B3:C" & i).Sort Key1:=Range("B2"), Order1:=xlAscending, Key2:=Range( _

"C2"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase _ etc…

Cordialement

Alain

ben j'avais bien essayé cette solution, mais ça me marque référence de tri non valide !

IBengin,

Un fichier exemple svp !

A vous lire

Alain

Rechercher des sujets similaires à "vba selection plage"