Excel - Macro Tri - Key1 = colonne de la cellule active

AlainDP Messages postés 1 Statut Membre -  
 AlainDP -
Bonjour,



Dans la partie du code suivant:

Application.Goto Reference:="ChampTri"
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("J10:J25") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Feuil1").Sort
.SetRange Range("ChampTri")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

comment remplacer Range("J10:J25") par la colonne de la cellule active ?

Merci d'avance de votre réponse.

3 réponses

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    Mettre ce code dans la feuille concernée:

    Option Explicit
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     MsgBox Split(ActiveCell.Address, "$")(1)
     End Sub
    


    Tu remplaceras le MsgBox par une variable que tu déclareras Public

    Ensuite:

    Public mavariable As String
     Range(mavariable  & "10:" & mavariable  & "25")


    Voilà
    0
    1. AlainDP
       
      Merci infiniment.
      Je vais appliquer votre solution.
      Excellent weekend...
      0
      1. AlainDP > AlainDP
         
        J'avoue que je n'ai pas compris.

        Mon but est de lancer un tri qui se fait par une seule clé, à savoir la colonne de la cellule active.

        J'ai essayé par exemple de remplacer :
        Add Key:=Range("J10:J25")
        par
        Add Key:=Column(ActiveCell),

        mais ça ne marche pas !
        0
    2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      C'est pourtant bien expliqué:

      Add Key:=Range(mavariable  & "10:" & mavariable  & "25") 
      0
      1. AlainDP > cs_Le Pivert Messages postés 8437 Statut Contributeur
         
        Merci beaucoup.
        Cordialement.
        0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour à tous les deux

    Un exemple
    http://www.cjoint.com/c/FCstvpWRXG5

    Cdlmnt
    0