Classer groupes de cellules par ordre alphabétique

moldu1

XLDnaute Nouveau
Salut les Cerveaux!

Existe-t-il un moyen de classer par ordre alphabétique des groupes de cellules que j'ai només et qui sont entourés en rouge dans la pièce jointe ?
Le nombre des groupes de cellules atteidra +/- 150 au total.

Merci de votre expertise.

Amicalement.
 

Pièces jointes

  • Tri cellules groupées.xlsx
    15.1 KB · Affichages: 74

JCGL

XLDnaute Barbatruc
Re : Classer groupes de cellules par ordre alphabétique

Bonjour à tous,

Peux-tu essayer ceci APRES avoir renseigné les cellules à gauche du Nom par =B3, =D3 et suivantes

VB:
Option Explicit


Sub Tri_Col()
    With ActiveWorkbook.Worksheets("Feuil1").Sort
        .SortFields.Add Key:=Range("A3:L3")
        .SortFields.Clear
        .SetRange Range("A1:L100")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlLeftToRight
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A1").Select
End Sub

A + à tous
 

Papou-net

XLDnaute Barbatruc
Re : Classer groupes de cellules par ordre alphabétique

Bonjour moldu1, JC,

@JC : Si j'ai bien compris, notre ami moldu veut trier par zone de noms et nom la zone entière A:L.

@ moldu :

Voici donc un exemple de macro :

Code:
Sub TriNom()
For Each nom In ActiveWorkbook.Names
  Range(nom).Range("A3:B22").Select
  ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
  ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range(nom).Range("A3:A22") _
    , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
  With ActiveWorkbook.Worksheets("Feuil1").Sort
    .SetRange Range(nom).Range("A3:B22")
    .Header = xlGuess
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
   End With
Next
End Sub
Pour la lancer, il suffit de cliquer sur le bouton.

Ci-joint le fichier.

Cordialement.
 

Pièces jointes

  • Copie de Tri cellules groupées.xlsm
    23.4 KB · Affichages: 57
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Classer groupes de cellules par ordre alphabétique

Bonjour à tous,
Salut Papou,

@JC : Si j'ai bien compris, notre ami moldu veut trier par zone de noms et nom la zone entière A:L.

J'ai bien précisé qu'il fallait remplir la cellule vide à gauche...
Ensuite je fais un tri par colonnes...

Ou bien, je n'ai rien compris... Ce qui est possible

A++
A + à tous
 

Papou-net

XLDnaute Barbatruc
Re : Classer groupes de cellules par ordre alphabétique

RE:

@ JC,

J'ai testé ta macro, après avoir mis les formules dans les cellules de gauche, mais apparemment et sauf erreur de ma part, rien ne se passe (j'ai modifié les dates bien sûr).

@ moldu,

J'ai fait une petite erreur de références de cellules dans mon code.

J'ai profité de la correction pour supprimer la sélection des plages nommées. Je les avais conservées pour visualiser lors des essais mais elles ne sont pas utiles pour le bon déroulement du programme. J'ai modifié la référence des cellules pour tenir compte de la modification éventuelle des plages nommées sans avoir à retoucher au code.

Code:
For Each nom In ActiveWorkbook.Names
  ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
  ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range(nom).Range("A3:A" & Range(nom).Rows.Count) _
    , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
  With ActiveWorkbook.Worksheets("Feuil1").Sort
    .SetRange Range(nom).Range("A3:B" & Range(nom).Rows.Count)
    .Header = xlGuess
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
   End With
Next
Cordialement.
 

Pièces jointes

  • Copie 01 de Tri cellules groupées.xlsm
    29.5 KB · Affichages: 53
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Classer groupes de cellules par ordre alphabétique

Bonjour à tous,

Papou : Merci de bien vouloir cliquer sur l'étoile

VB:
Option Explicit


Sub Tri_Col()
    With ActiveWorkbook.Worksheets("Feuil1").Sort
        .SortFields.Clear
        .SortFields.Add Key:=Range("A3:L3")
        .SetRange Range("A1:L100")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlLeftToRight
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A1").Select
End Sub


A + à tous
 

Pièces jointes

  • JC Tri Cellules Groupées.xlsm
    20.8 KB · Affichages: 63
Dernière édition:

Papou-net

XLDnaute Barbatruc
Re : Classer groupes de cellules par ordre alphabétique

RE JC,

Aarfff, je n'ai pas compris la même chose que toi.

Je pensais que notre ami voulait trier les données dans chaque colonne nommée mais, au vu de ton approche, je pense que tu as mieux cerné la question que moi.

En attendant des nouvelles de l'intéressé, je considère mon intervention comme nulle et non avenue.

A +

Amicalement..
 

moldu1

XLDnaute Nouveau
Re : Classer groupes de cellules par ordre alphabétique

Salut JCGL et Papou-net,

Merci pour l'intérêt porté à ma question.

Etant débutant, j'ai passé du temps à comprendre les manipulations et parvenir au résultat de vos solutions.
Il semble que je me suis bien mal exprimé:

Dans la nlle feuille en pj il y a un ensemble de plages encadrées en rouge. Chacune de ces plages, est, ou sera nomée du nom du client.

Ma demande:
Est-ce faisable de trier au fur et à mesure toutes ces plages individuellement,par ordre alphabetique de leurs noms (sur l'ensemble de la zone délimitée par le cadre bleu)
Dans l'onglet "FUTUR" le résultat que je recherche.

Merci pour votre temps passé.

Amicalement.
 

Pièces jointes

  • Nlle explication.xlsx
    82.3 KB · Affichages: 60

Jidé

XLDnaute Nouveau
Re : Classer groupes de cellules par ordre alphabétique

Bonjour à tous,

Papou : Merci de bien vouloir cliquer sur l'étoile

VB:
Option Explicit


Sub Tri_Col()
    With ActiveWorkbook.Worksheets("Feuil1").Sort
        .SortFields.Clear
        .SortFields.Add Key:=Range("A3:L3")
        .SetRange Range("A1:L100")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlLeftToRight
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A1").Select
End Sub


A + à tous

Bonjour JCGL,

Je suis dans une situation similaire à celle du post initial, à une différence près.
Le tri est selon une ligne (Feuille Champ, Ligne 2) dont les cellules contiennent une formule. D'où la valeur 0 si la cellule source est vide.
J'essaie en vain d'adapter le code pour classer dans l'ordre alphabétique (texte) avec 0 en dernier (colonnes de droites), et ce en gardant les formules dans toutes les cellules.
Je n'y arrive pas :(
Merci pour un coup de main.
 

Pièces jointes

  • TriCol.xlsx
    13.1 KB · Affichages: 45

Jidé

XLDnaute Nouveau
Re : Classer groupes de cellules par ordre alphabétique

Bonjour JCGL,

Merci pour la réponse rapide
Biarritz désigne l'équipe et les colonnes C et D sa composition.(Joueur et Index du joueur)
Les colonnes sont à trier par paires indivisibles (C avec D, E avec F, et ainsi de suite).
Comme dans le post initial.

Cordialement,
 

Discussions similaires

Statistiques des forums

Discussions
312 184
Messages
2 086 008
Membres
103 088
dernier inscrit
Psodam