Tri des données Macros

Résolu
Bonjour,
Sur ma macros, j'aimerai faire un tri des données plus rapide que cette formule :

'tri des donnees
k = Worksheets("IMPORT").Range("A1").End(xlDown).Row
For i = 0 To k
j = 2
While j < endLine
m = Len(Worksheets("IMPORT").Cells(j, 1))
l = Len(Worksheets("IMPORT").Cells(j + 1, 1))
If (l < m) Then
Sheets("IMPORT").Rows(j + 1).Cut
Sheets("IMPORT").Rows(j).Insert
End If
j = j + 1
Wend
Next i

Avez-vous une idée ?
Merci d'avance

Cordialement,

Configuration: Windows / Chrome 88.0.4324.150

5 réponses

  1. Bonjour,
    Un exemple de votre fichier avec explications serait le bienvenu.
    Pour transmettre un fichier,
    Veillez à ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
    il faut passer par un site de pièce jointe tel que cjoint.com

    Allez sur ce site : https://www.cjoint.com/
    Clic sur parcourir,
    Cherche ton fichier,
    clic sur ouvrir,
    Clic sur "Créer le lien cjoint",
    Copier le lien,
    Revenir ici le coller dans une réponse...
    Cordialement

    0
    1. Merci pour votre aide, le lien est crée le voici : https://www.cjoint.com/c/KBhupi41roE

      Cordialement,
      0
      1. Contributeur
        Bonjour,

        tu aurais pu mettre les explication en clair.
        Fais selon ce que j'ai compris :
        Sub trier()
            Dim nblig As Long
            nblig = Cells(Rows.Count, 2).End(xlUp).Row
            Columns(1).Insert Shift:=xlToRight
            Range("A1").Resize(nblig).FormulaR1C1 = "=LEN(RC[1])"
            [A:C].Resize(nblig).Sort Key1:=[A1], Order1:=xlAscending, Header:=xlNo
            Columns(1).EntireColumn.Delete
        End Sub

        eric

        0
        1. Merci pour votre réponse, j'ai juste une question : nblig et Resize, cela signifie quoi ? Merci
          0
          1. Contributeur
            Bonjour,

            nbliog est un nom de variable que tu choisis.
            Pour Resize faire F1 dessus et consulter l'aide.
            eric
            0