Microsoft 365 Tris spéciaux

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,
Je vous souhaite une belle fin de dimanche :)

Je voudrais faire des tris spéciaux.
Par exemple :
Prospect 122550 MATIGNON 1 rue excel-downloads
Trié sur 22550 ou MATIGNON (remarque IMPORTANTE : 22550 et MATIGNON sont dans la même cellule)
Cela me ferait économiser des colonnes ainsi que de la taille fichier.


J'ai tenté et fait des recherches mais je n'y suis pas arrivé.
D'ailleurs, est-ce possible ?
Si oui, auriez-vous le bon code ?
Je joins un petit fichier test.

Avec mes remerciements,
Je continue mes recherches.
Amicalement,
lionel :)
 

Pièces jointes

  • tri_test.xlsm
    21.9 KB · Affichages: 9
Dernière édition:
Solution
Bonsoir Lionel,

Les codes des 2 boutons :
VB:
Sub Tri_CP()
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
    .Columns(.Columns.Count + 1).Resize(, 2).Insert xlToRight '2 colonnes auxiliaires
    With .Columns(.Columns.Count + 1)
        .FormulaR1C1 = "=LEFT(RC[-1],FIND("" "",RC[-1])-1)"
        .Offset(, 1).FormulaR1C1 = "=MID(RC[-2],FIND("" "",RC[-2])+1,999)"
        .EntireRow.Sort .Cells, xlAscending, .Cells(1, 2), , xlAscending, Header:=xlYes
        .Resize(, 2).Delete xlToLeft 'supprime les colonnes auxiliaires
    End With
End With
End Sub

Sub Tri_Ville()
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
    .Columns(.Columns.Count + 1).Resize(, 2).Insert xlToRight '2 colonnes auxiliaires
    With...

job75

XLDnaute Barbatruc
Bonsoir Lionel,

Les codes des 2 boutons :
VB:
Sub Tri_CP()
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
    .Columns(.Columns.Count + 1).Resize(, 2).Insert xlToRight '2 colonnes auxiliaires
    With .Columns(.Columns.Count + 1)
        .FormulaR1C1 = "=LEFT(RC[-1],FIND("" "",RC[-1])-1)"
        .Offset(, 1).FormulaR1C1 = "=MID(RC[-2],FIND("" "",RC[-2])+1,999)"
        .EntireRow.Sort .Cells, xlAscending, .Cells(1, 2), , xlAscending, Header:=xlYes
        .Resize(, 2).Delete xlToLeft 'supprime les colonnes auxiliaires
    End With
End With
End Sub

Sub Tri_Ville()
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
    .Columns(.Columns.Count + 1).Resize(, 2).Insert xlToRight '2 colonnes auxiliaires
    With .Columns(.Columns.Count + 1)
        .FormulaR1C1 = "=LEFT(RC[-1],FIND("" "",RC[-1])-1)"
        .Offset(, 1).FormulaR1C1 = "=MID(RC[-2],FIND("" "",RC[-2])+1,999)"
        .EntireRow.Sort .Cells(1, 2), xlAscending, .Cells, , xlAscending, Header:=xlYes
        .Resize(, 2).Delete xlToLeft 'supprime les colonnes auxiliaires
    End With
End With
End Sub
A+
 

Pièces jointes

  • tri_test(1).xlsm
    26.6 KB · Affichages: 2

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
lol, j'oubliais : Bonsoir Gérard :) :) :)
Faudra que je relise la charte lol :)
téléchargement.jpg
 

Discussions similaires

Réponses
22
Affichages
1 K

Statistiques des forums

Discussions
312 215
Messages
2 086 322
Membres
103 178
dernier inscrit
BERSEB50