tri d'une combobox déjà alimenté

fhoest

XLDnaute Accro
Bonjour,
j'ai quatres combobox que j' alimente sans pouvoir touché a la base de données,
j' effectue un tri par odre alphabetique et sans doublon la la fin de mon remplissage de la combo,
mon seul souci c'est que le temps du tri est parfois long.
auriez vous un moyen de faire ce tri rapide en passant par exemple par un tableau.

Merci de votre aide.
 

Pièces jointes

  • combo.zip
    23.6 KB · Affichages: 80
  • combo.zip
    23.6 KB · Affichages: 78
  • combo.zip
    23.6 KB · Affichages: 79

Fred0o

XLDnaute Barbatruc
Re : tri d'une combobox déjà alimenté

Bonsoir fhoest,

Ton code est assez compliqué.

J'ai ré-écrit le code du Combobox1 comme suit et c'est beaucoup plus rapide.
Code:
Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Dim x As Long
    drligne = 5000
    If Not c1 Then
        ComboBox2.Clear
        ComboBox3.Clear
        ComboBox4.Clear
        Columns(18).Select
        If ComboBox1.Value = "" Then Exit Sub
        With Selection
            x = 0
            Do
                x = x + 1
                If Range("R" & x).Value = ComboBox1.Value And Range("R" & x).Offset(0, 1).Value <> "" Then
                    ComboBox2.AddItem Range("R" & x).Offset(0, 1).Value
                End If
            Loop Until x = drligne
            Call tri(ComboBox2)
            c2 = True
        End With
    End If
End Sub

Essaie de le reproduire pour les autres Combobox. J'ai été obligé de réaffecter la variable drligne car elle était à 0 et plantait la macro.

A+
 

fhoest

XLDnaute Accro
Re : tri d'une combobox déjà alimenté

bonjour,
merci je vais tester la variable drligne est normalement égale dans le fichier a une derniere cellules non vide de la colonne 1 et j'ai changé cette valeur rien que pour le forum ,elle n'est jamais a 0 normalment
A +
 

youky(BJ)

XLDnaute Barbatruc
Re : tri d'une combobox déjà alimenté

Bonjour fhoest,
regarde si ceal conviens dans ce fichier.
J'utilise une listview qui sera masquée.
A voir aussi si ça passe sur ton PC.
Sinon c'est rapide.
Bruno
 

Pièces jointes

  • combo (version 1).zip
    31 KB · Affichages: 84
Dernière édition:

fhoest

XLDnaute Accro
Re : tri d'une combobox déjà alimenté

Bonjour FredOo,youky(BJ)
merci pour commencer a FredOo pour la solution effectivement plus rapide que la mienne ca marche tres bien
cependant je remercie également Youky(BJ) qui a une solution très rapide l'exemple de youky(BJ) et pour moi plus interressant mais je n'oublie le geste qui m'a rendu service egalement pour me rendre compte qu'il y avait une solution plus simple de recherche que celle que j'utilisé auparavent
encore merci a vous deux
Bonne soirée.
 

fhoest

XLDnaute Accro
Re : tri d'une combobox déjà alimenté

Bonjour,
j'ai un petit souci avec le usf lorsque l'on ferme ce dernier sans rien selectionner (combobox) vierge et fermeture message d'erreur
Variable object ou variable de bloc with non definie
erreur '91'
j'ai trouver une petite solution de secours en utilisant instruction
On error resume next mais j'aimerais connaitre la vrai solution a ce probleme je cherche mais dur,dur...
Merci.
A bientot.
 

Lii

XLDnaute Impliqué
Re : tri d'une combobox déjà alimenté

Bon soir,

.. mais je n'oublie le geste qui m'a rendu service egalement pour me rendre compte qu'il y avait une solution plus simple de recherche que celle que j'utilisé auparavent...
quelle recherche ?

Sinon, en vitesse, une autre façon de trier (ListView) sans doublon (Combobox).
 

Pièces jointes

  • VBA 4ListesDépendantes.zip
    20.8 KB · Affichages: 89

fhoest

XLDnaute Accro
Re : tri d'une combobox déjà alimenté

remoi,
merci
méthode très bien rapide,j'avouerais que j'ai un peu moins de mal a comprendre le code que tu viens de develloper,pour le call colonne j'ai vu que tu as mis des points ?? en fait pour repondre a ta question qu'es ce que l'on fait apres ce petit userform article et un userform transitoire sur lequels on selectionne des articles d'une base de donnée technique et colonne rempli un userform avec toutes les cellules necessaires a l'article trouver portant le critere de selection du userform sur lequel tu as travaillé.
merci encore.
je vois que tu utilise egalement une listview,
as tu connaissance ou une solution au probleme que j'ai soulevé juste avant que me reponde si oui serais tu m'eguillé juste pour que j'apprenne a gerer ce genre d'erreur.
A+
 

Lii

XLDnaute Impliqué
Re : tri d'une combobox déjà alimenté

Re,

je ne vois que la ligne ".Show" dans la macro inicb1 qui peut poser problème.
Tout dépend de la façon que tu utilises pour afficher l'USF.
La suppression de cette ligne pourrait régler le problème.
Pour ma part, je préfère regrouper dans le Module de l'Userform, toutes les procédures permettant de le faire tourner correctement.
Je ne parle pas des variables déclarées en "Public" qui doivent être placées dans un Module standard !
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
300
Réponses
28
Affichages
1 K

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 206
Messages
2 086 219
Membres
103 158
dernier inscrit
laufin