IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Pb tri alphanumérique [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut Pb tri alphanumérique
    Bonjour

    j'ai un problème de tri de cellules contenant des chiffres et des lettres.

    dans une colonne j'ai :
    A3
    A2B
    A3B
    A4
    A1A
    A1B
    A13B
    A13A
    A15A2
    A15A1
    et j'aimerai obtenir :
    A1A
    A1B
    A13A
    A13B
    A15A1
    A15A2
    A2B
    A3
    A3B
    A4
    j'ai essayé mais ne trouve pas le moyen d'y arriver !
    Qui peut m'aider
    cordialement

  2. #2
    Invité
    Invité(e)
    Par défaut
    bonjour,
    comme son attribué ces Codes?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    C'est une liste de panneaux de signalisation de police
    les codes sont en l'état
    par exemple : A1a "Virage à droite"

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Une piste. Le code que j'ai fais remplace les chiffres par des lettres et colle le résultat dans la colonne d'à coté puis le tri est fait avec cette colonne comme clé 1 et ensuite, ces valeurs (dans la colonne de droite) sont supprimées. Teste sur un classeur vierge avec tes codes en colonne A de A1 à A10 pour voir le résultat et si ça convient, adapte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    Sub Trier()
     
        Dim Plage As Range
        Dim Cel As Range
        Dim Chaine As String
        Dim I As Integer
     
        Set Plage = Range("A1:A10")
     
        For Each Cel In Plage
     
            For I = 1 To Len(Cel.Value)
     
                If IsNumeric(Mid(Cel.Value, I, 1)) = True Then
     
                    Chaine = Chaine & Choose(Mid(Cel.Value, I, 1), "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", _
                                                                   "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
     
                Else
     
                     Chaine = Chaine & Mid(Cel.Value, I, 1)
     
                End If
     
            Next I
     
            Cel.Offset(, 1).Value = Chaine
     
            Chaine = ""
     
        Next Cel
     
        With ActiveSheet.Sort
     
            .SortFields.Add Plage.Offset(0, 1), 0, 1, , 0
            .SetRange Plage.Resize(Plage.Rows.Count, 2)
            .Header = xlGuess
            .Apply
     
        End With
     
        Plage.Offset(0, 1).Clear
     
    End Sub
    Hervé.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    Bonjour Theze, le forum

    avec toutes mes excuses pour le retard de ma réponse

    ton code me plait beaucoup et fonctionne comme je le souhaitais

    merci beaucoup
    @+

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    Bonjour Theze

    ta ùacro fonctionne à merveille merci

    cependant je n'arrive pas à adapter ton code lorsque le tri porte sur deux colonnes (les 2 valeurs vont de pair)

    A13B.jpg	E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Danger
    A13A.jpg	E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Danger
    A14.jpg		E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Danger
    A15A2.jpg	E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Danger
    A15A1.jpg	E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Balises
    A1C,jpg		E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Balises
    A1B.jpg		E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Balises
    A1A.jpg		E:\_PIERRE\Prog_VBA\Stocks\Panneaux\Balises

    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [V6] problème de tri alphanumérique
    Par briolins dans le forum Deski
    Réponses: 7
    Dernier message: 04/11/2009, 15h57
  2. Tri alphanumérique sql
    Par eddyrigotti dans le forum SQL
    Réponses: 3
    Dernier message: 22/10/2009, 10h20
  3. [Système] Tri alphanumérique en UTF-8
    Par nazoreen dans le forum Langage
    Réponses: 5
    Dernier message: 24/06/2007, 14h15
  4. Réponses: 1
    Dernier message: 22/06/2007, 12h48
  5. Réponses: 5
    Dernier message: 23/01/2006, 19h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo