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 :

Tri Alpha combobox [XL-365]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mai 2024
    Messages : 5
    Par défaut Tri Alpha combobox
    Bonjour,

    Que faut-il que j'ajoute pour trier par alpha ma combobox SVP


    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
    Function Fillsportvalues()
        Dim ws As Worksheet
        Dim cell As Range
        Dim uniqueValues As Collection
        Set uniqueValues = New Collection
     
        Set ws = ThisWorkbook.Sheets("listing")
     
        On Error Resume Next
        For Each cell In ws.Range("H:H")
            If cell.Value <> "" Then
            uniqueValues.Add cell.Value, CStr(cell.Value)
            End If
        Next cell
        On Error GoTo 0
     
        Me.cbSport.Clear
     
        Dim Val As Variant
        For Each Val In uniqueValues
            Me.cbSport.AddItem Val
        Next Val
     
    End Function

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 176
    Billets dans le blog
    53
    Par défaut ArrayList
    Bonjour,
    Que faut-il que j'ajoute pour trier par alpha ma combobox SVP
    Voir cette discussion Utilisation de l’objet «System.Collections.ArrayList"

    Et pour approfondir la question, quelques liens intéressants
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 176
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    En relisant votre demande, je constate que vous avez la version 365 d'Excel et qu'outre le tri de la colonne, vous souhaitez supprimer les doublons, donc il y a évidemment plus simple.

    Dans mon exemple, j'ai une table nommée t_Data (Tableau Structuré) qui contient une colonne nommée Ville

    Si je souhaite dans Excel obtenir cette colonne triée et sans les doublons, je vais utiliser la formule =TRIER(UNIQUE(t_Data[Ville])) soit en anglais =SORT(UNIQUE(t_Data[Ville]))

    Pour obtenir le même résultat en VBA et pour l'envoyer dans le ListBox du UserForm, je vais utiliser la fonction Evaluate

    La procédure cidessous est à placer dans un module Standard
    Le UserForm se nomme UserForm1 et le ListBox lstUniqueSorted
    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
    Sub Main()
      Const TableName As String = "t_Data"
      Const LabelColumn As String = "Ville"
      Dim lst As ListObject
      Dim rng As Range
      Dim l As Variant
      Set lst = Range(TableName).ListObject
      Set rng = lst.ListColumns(LabelColumn).DataBodyRange
      '
      With UserForm1
      .lstUniqueSorted.List = Evaluate("=SORT(UNIQUE(" & rng.Address(External:=True) & "))")
      .Show
      End With
      Set lst = Nothing: Set rng = Nothing
    End Sub
    Illustration

    Nom : 240505 dvp UserForm Sort Unique.png
Affichages : 77
Taille : 102,6 Ko
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

Discussions similaires

  1. NLS_COMP + tri alpha numérique
    Par bruno_nono dans le forum Oracle
    Réponses: 5
    Dernier message: 18/06/2011, 21h42
  2. [Toutes versions] Tri alpha d'une listbox renseignée
    Par LeForestier dans le forum Contribuez
    Réponses: 0
    Dernier message: 14/08/2009, 10h10
  3. Tri alpha numérique des combobox
    Par fisio dans le forum VBA Access
    Réponses: 5
    Dernier message: 09/06/2009, 06h25
  4. problème de requète lors d'un tri par combobox
    Par inforlab dans le forum Windows Forms
    Réponses: 1
    Dernier message: 02/12/2008, 22h52
  5. tri alpha numérique
    Par cbarbaray dans le forum Oracle
    Réponses: 3
    Dernier message: 30/08/2006, 10h37

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