Liste des fichiers d'un répertoire avec choix intuitif

Dans le userform1 remplacer la fonction existante par

Private Sub TypeFich_Change()
    Dim indtype As Long
    Dim n
    ReDim Preserve Tbl(0)
    ListBox1.Clear
    nf = Dir(Me.répertoire.Value & "\" & Me.TypeFich)
    'prévoir le cas où l'extension du fichier n'est pas trouvé dans le dossier
    If nf = "" Then
        Me.ListBox1.Clear
        Me.TextBox1 = "0 Fichier"
        Exit Sub
    End If
    n = 0
    Do While nf <> ""
        indtype = 0
        Do
            If nf Like TypeFich.List(indtype) And TypeFich.Selected(indtype) Then
                n = n + 1
                ReDim Preserve Tbl(n)
                Tbl(n) = nf
            End If
            indtype = indtype + 1
        Loop Until indtype > TypeFich.ListCount - 1
        nf = Dir
    Loop
    If n > 0 Then Me.ListBox1.List = Tbl
    Me.TextBox1 = Me.ListBox1.ListCount & IIf(Me.ListBox1.ListCount > 1, " Fichiers", " Fichier")
    Me.ListBox1.ListIndex = 0
End Sub

Attention, je ne réponds pas à ta question mais je corrige un bug sur la selection et désélection des types de fichiers

Je poursuis sur ta demande :" Je souhaiterai afficher la date de modification, la taille et que la ListBox soi triée par ordre croissant."

Pour les options de tri je propose de reprendre l'apparence du userform2 , c'est plus conventionnel pour l'interface homme-machine

Bonjour Modus@57

Dans l'existant, la saisie intuitive est annulée dès lors que l'on choisit un tri ou un filtre: est-ce le bon fonctionnement?

Techniquement : La saisie intuitive utilise un objet dictionary pour remplir la listbox sans utiliser de tableau intermédiaire où l'on pourrait je pense (pas sûr) utiliser ensuite les filtres un objet Range.Autofilter, et les tris un DataBodyRange.Sort

le bouton Annuler s'applique au filtre "Entre 2 dates"? ne faut t'il pas un bouton pour annuler "le tri" et un dernier pour annuler la recherche intuitive?

Bonsoir scraper,

Merci pour tes réponses.

J‘ai corrigé le code, la saisie intuitive n’est plus annulée dès lors que l'on choisit un tri ou un filtre.

Dans mon dernier fichier, pour annuler la recherche intuitive il suffit de supprimer la saisie dans le contrôle.

Pour les options de tri j’ai modifié et ajouté les boutons «Nom AZ» et «Nom ZA» dans la Frame cela évite de faire appel à un autre UserForm.

Dans le userform1 j'ai remplacer la fonction existante

Private Sub TypeFich_Change()

mais si la sélection change la première ligne de la ListBox est vide ?

Pour la question "Je souhaiterai afficher la date de modification, la taille et que la ListBox soi triée par ordre croissant." Je n’ai pas trouvé de solution.

Rechercher des sujets similaires à "liste fichiers repertoire choix intuitif"