Macro de tri avec sélection active

jpfonky

XLDnaute Nouveau
Bonjour, :)

Je suis un novice en termes de macro , et je me casse les dents depuis ce matin sur un problème qui devrait être simple pour les initiés.

Alors voilà j'aimerais faire une macro qui me permette de faire un tri dans la sélection courante/ active , selon la colonne G par ordre décroissant.

Le principal souci est que lorsque j'enregistre la macro excel tient compte des coordonnées de la sélection alors que je cherche à lui faire prendre en compte la sélection active.

Pourriez vous m'expliquer comment faire ?

Merci d'avance ;)
 

ROGER2327

XLDnaute Barbatruc
Re : Macro de tri avec sélection active

Bonjour jpfonky
Essayez ceci :
VB:
Sub toto()
  With Selection
    If .Cells.Areas.Count <> 1 Then
      MsgBox "Le tri n'est possible que sur une sélection rectangulaire."
    ElseIf Intersect(Columns("G:G"), .Cells) Is Nothing Then
      MsgBox "La sélection doit inclure une partie de la colonne G."
    Else
      .Sort Key1:=Intersect(.Cells, Columns("G:G"))(1), Order1:=xlDescending, Header:=xlNo, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
    End If
  End With
End Sub
ROGER2327
#5294


Dimanche 15 Merdre 138 (Saints Serpents d’Airain - fête Suprême Tierce)
13 Prairial An CCXIX, 9,0869h - pois
2011-W22-3T21:48:30Z
 

ROGER2327

XLDnaute Barbatruc
Re : Macro de tri avec sélection active

Merci, jpfonky, d'avoir posé ce problème juste pour éviter qu'on s'ennuie. C'est trop gentil !

(C'est vrai, ça. Le résultat, on s'en fout et on s'en contrefout !)

ROGER2327
#5352


Lundi 2 Gidouille 138 (Saint Lucullus, amateur(Bloosday) - fête Suprême Quarte)
28 Prairial An CCXIX, 4,0462h - thym
2011-W24-4T09:42:39Z
 

GFABasic

XLDnaute Nouveau
Re : Macro de tri avec sélection active

Bonjour, Roger2327
Moi je ne m’en fous pas. Mais ce n’est pas exactement ce que je cherche.
Je cherche à faire un tri sur les cellules actives.
Après avoir fait le collé d’une plage de cellules.
Quelque chose comme-ça
Cells(Lig, col).Select
ActiveSheet.Paste (d’une plage cellules)
ActivesCells.Sort(Order:=xlAscending) ???? Et le tri de ladite plage.
Je ne sais pas si tu vas répondre un an après cette discussion (ce coup de gueule) dans tous les cas bonne nuit.
moi je vais au lit pour aujourd’hui.
 

Discussions similaires

Réponses
3
Affichages
523

Statistiques des forums

Discussions
312 499
Messages
2 089 002
Membres
104 002
dernier inscrit
SkrauzTTV