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

IHM Discussion :

[Formulaire] Liste de fichiers dans une listbox


Sujet :

IHM

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut [Formulaire] Liste de fichiers dans une listbox
    Bonjour,

    J'aimerai faire à peu près la même chose que dans cette discussion à quelques détails près...je m'explique :

    Je voudrais aussi afficher tout les fichier (.doc et non .xls) d'un dossier que l'utilisateur à choisit auparavant à l'aide d'un bouton parcourir...

    Le truc c'est que j'aimerai pas mettre le nom des fichiers dans une ListeBox mais plutot dans un intitulé ou dans un champs édit (je ne sais pas quel est le meilleur à faire) et mettre une case à cocher à coté afin que l'utilisateur puisse choisir quel sont les fichiers .doc du répértoire qu'il voudra convertir par la suite...

    Je prend le code marqué précédement et j'ai essayé de le changer mais je suis perdu :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Private Sub btn_lister_Click()
     
        Dim ext As String
        Const myRep = "edit_repertoire.Text"
     
        ext = Dir(myRep & "*.doc")
        ' comment faire pour créer la boucle qui va afficher pour chaque fichier une liste à cocher à coté ???
        Do While ext <> ""
            ListBox1.AddItem ext
            ext = Dir
        Loop
     
    End Sub
    Merci d'avance.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 28
    Points : 21
    Points
    21
    Par défaut
    Bonjour,

    La solution que tu s noté est spécifique pour une ListBox.
    La ListBox est un bon moyen suivant le nombre de fichier que tu as.
    Ta ListBox peut aussi fonctionner avec des cases à cocher : Option Liststyle

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonjour

    j'espere que cet exemple pourra t'aider


    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
    Private Sub CommandButton1_Click()
        Dim Fichier As String
        Dim objShell As Object, objFolder As Object
        Dim x As Integer
        Dim Chemin As String
     
        'récupère le nom du répertoire sélectionné
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = _
            objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&)
        On Error Resume Next
     
        Chemin = objFolder.ParentFolder.ParseName(objFolder.Title).Path
        If objFolder.Title = "" Then Chemin = ""
        x = InStr(objFolder.Title, ":")
        If x > 0 Then Chemin = Mid(objFolder.Title, x - 1, 2) & ""
     
        If Chemin = "" Then Exit Sub
     
        Fichier = Dir(Chemin & "\*.doc")
     
        Do While Fichier <> ""
            ListBox1.AddItem Fichier
            Fichier = Dir
        Loop
     
        ListBox1.ListStyle = fmListStyleOption
    End Sub


    michel

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Pour que l'utilisateur puisse sélectionner plusieurs fichiers à la fois dans la liste, modifie la propriété MultiSelect de ta liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListBox1.MultiSelect = fmMultiSelectMulti
    Regarde aussi à "MultiSelect" ce que donne le paramètre fmMultiSelectExtended, dans l'aide

  5. #5
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par Muse31
    Bonjour,

    La solution que tu s noté est spécifique pour une ListBox.
    La ListBox est un bon moyen suivant le nombre de fichier que tu as.
    Ta ListBox peut aussi fonctionner avec des cases à cocher : Option Liststyle
    Est-ce possible d'afficher le chemin et le nom du fichier complet avec une case à cocher juste à coté ? Si oui comment car vu la listBox j'ai l'impression qu'on séléctionne directement les données que l'on veut...

    Citation Envoyé par SilkyRoad
    bonjour

    j'espere que cet exemple pourra t'aider


    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
    Private Sub CommandButton1_Click()
        Dim Fichier As String
        Dim objShell As Object, objFolder As Object
        Dim x As Integer
        Dim Chemin As String
     
        'récupère le nom du répertoire sélectionné
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = _
            objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&)
        On Error Resume Next
     
        Chemin = objFolder.ParentFolder.ParseName(objFolder.Title).Path
        If objFolder.Title = "" Then Chemin = ""
        x = InStr(objFolder.Title, ":")
        If x > 0 Then Chemin = Mid(objFolder.Title, x - 1, 2) & ""
     
        If Chemin = "" Then Exit Sub
     
        Fichier = Dir(Chemin & "\*.doc")
     
        Do While Fichier <> ""
            ListBox1.AddItem Fichier
            Fichier = Dir
        Loop
     
        ListBox1.ListStyle = fmListStyleOption
    End Sub


    michel
    J'ai essayé vôtre code dans un autre fichier .mdb et cela ne m'a rien fait...

    Je m'éxplique, quand je clique sur le bouton la fenêtre séléction du répértoire s'ouvre je choisis mon répértoire mais cela s'arrête la...Est-ce normal ?

    Citation Envoyé par ouskel'n'or
    Pour que l'utilisateur puisse sélectionner plusieurs fichiers à la fois dans la liste, modifie la propriété MultiSelect de ta liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListBox1.MultiSelect = fmMultiSelectMulti
    Regarde aussi à "MultiSelect" ce que donne le paramètre fmMultiSelectExtended, dans l'aide
    j'ai regardé dans l'aide comme vous l'aviez dis pour la fonction MultiSelect je comprend plus ou moin mais pour le fmMultiSelectMulti alors la je nage complètement...

    Merci pour vos réponses.

    Amicalement.

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Pour
    ListBox1.MultiSelect = fmMultiSelectMulti
    Citation Envoyé par ushiwa.sasuke"
    mettre une case à cocher à coté afin que l'utilisateur puisse choisir quel sont les fichiers .doc du répértoire qu'il voudra convertir par la suite...
    J'ai supposé que l'utilisateur pouvait sélectionner plusieurs fichiers à la fois dans la liste. Cette syntaxe te permet de sélectionner plusieurs noms dans ton listbox
    Quant à fmMultiSelectExtended, ce paramètre permet d'étendre une sélection d'un 1er fichier à un "xième" autre.
    Maintenant, pour le code de Michel, vérifie le chemin que tu indiques par un debugprint ou msgbox, tu dois avoir un pb à ce niveau... Sinon, je ne vois pas

  7. #7
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    j'ai remarqué que c'est à cet endroit ci que le code de michel ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Do While Fichier <> ""
            ListBox1.AddItem Fichier
            Fichier = Dir
        Loop
     
        ListBox1.ListStyle = fmListStyleOption
    De plus le AddItem n'ai pas reconnu chez moi et de même pour le .Clear plus haut...

    Y'a-t-il une ou plusieurs librairie à activer ?

    Merci d'avance.

    Edit : pour le .Clear j'ai trouvé un autre moyen de vider la liste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List_rep.DefaultValue = ""

  8. #8
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    elle se nomme comment ta listbox ..? listbox1 ou
    List_rep

  9. #9
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    List_rep

  10. #10
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par ushiwa.sasuke
    List_rep
    alors pourquoi tu nous montre du code avec listbox1 ..? soit plus clair sur messages d'erreur et lignes d'erreurs..:

  11. #11
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    J'ai du me tromper... c'est en essayant dans un autre fichier .mdb surement...

    Je m'en excuse


    Voici le code de mon bouton lister :

    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
     
    Private Sub btn_lister_Click()
     
        Dim ext As String
        Const myRep = "edit_repertoire.Text"
     
        ext = Dir(myRep & "*.doc")
        List_rep.Visible = True
        List_rep.DefaultValue = ""
        Do While ext <> ""
            List_rep.AddItems ext
            ext = Dir
        Loop
     
        List_rep.ListStyle = fmListStyleOption
     
    End Sub
    la propriété AddItems n'est pas reconnu dans mon Access il me génère le message d'erreur suivant :



    Merci d'avance.

  12. #12
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu as essayé avec AddItem ? (non addItems)
    (Je n'ai jamais fait de VBA sur Access et je sais qu'il y a une différence pour renseigner les listbox mais j'ignore laquelle - peut-être RowSource qui n'est pas accepté... sous réserve, donc...)
    Tu dis

  13. #13
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    quand je tape le . après le nom de ma listBox quand je cherche dans les possibilités qu'il me propose j'ai même pas un add...(blablabla par ex)

    Comment est-ce possible ?

    Merci d'avance.

  14. #14
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    C'est ce qui me semblait, pas d'Additem dans Access
    Regarde à ControlSource, dans l'aide VBA Access
    Extrait de l'aide
    Dans cet exemple, un champ City (Ville) est affecté à la propriété ControlSource d'une zone de texte Adresse :

    Forms!Customers!AddressPart.ControlSource = "City"
    Dans ce exemple, l'expression = Date() + 7 est affectée à la propriété ControlSource d'une zone de texte Expected (Date prévue).

    Me!Expected.ControlSource = "=Date() + 7"
    Mieux, regarde les propriétés de Textbox
    Bonne chance

  15. #15
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    La propriété ControlSource ne fonctionne pas non plus

    Sinon dans l'aide de la TextBox ??? pkoi

    J'ai regardé dans celui de la ListBox mais rien trouvé...

    Je suis vraiment perdu

  16. #16
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Si tu développes en Access, tu serais mieux sur le forum qui y est dédié.

    Je déplace ta question.

  17. #17
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311

  18. #18
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Extrait de l'aide Access

    Propriété ControlSource
    Voir aussiS'applique àExempleSpécifiques
    La propriété ControlSource permet de spécifier les données devant apparaître dans un contrôle. Vous pouvez afficher et modifier des données dépendantes d'un champ dans une table, une requête et une instruction SQL. Vous pouvez également afficher le résultat d'une expression. Chaîne en lecture/écriture.

    expression.ControlSource

    expression Requise. Expression renvoyant l'un des objets figurant dans la liste Application.

    Paramètre
    La propriété ControlSource utilise les paramètres suivants :

    Paramètre Description
    Un nom de champ Le contrôle est dépendant d'un champ d'une table, d'une requête ou d'une instruction SQL. Les données du champ sont affichées dans le contrôle. Les modifications apportées aux données figurant à l'intérieur du contrôle sont répercutées dans le champ. Pour que le contrôle ne soit accessible qu'en lecture seule, affectez le paramètre Oui à la propriété Locked. En cliquant sur un contrôle dépendant d'un champ possédant un type de données Lien hypertexte, vous pouvez vous rendre à la destination spécifiée par l'adresse du lien hypertexte.
    Une expression Le contrôle affiche les données générées par une expression. Ces données peuvent être modifiées par l'utilisateur, mais ne sont pas enregistrées dans la base de données.


    La propriété ControlSource d'un contrôle peut être paramétrée à l'aide de la feuille des propriétés du contrôle, d'une macro ou de Visual Basic.

    Vous pouvez aussi paramétrer la propriété ControlSource d'une zone de texte en tapant directement un nom de champ ou une expression dans cette zone de texte en mode Création de formulaire ou en mode Création d'état.

    Pour les états, vous pouvez paramétrer cette propriété en sélectionnant un champ ou en tapant une expression dans la colonne Champ/Expression de la boîte de dialogue Trier/Regrouper. Pour plus d'informations, consultez la rubrique se rapportant à la propriété GroupLevel.

    Dans Visual Basic, utilisez une expression chaîne pour attribuer une valeur à cette propriété.

    Remarques
    La propriété ControlSource associée à un niveau de regroupement d'un état détermine le champ ou l'expression concerné(e) par le regroupement.

    Remarque La propriété ControlSource ne s'applique pas aux cases à cocher, aux boutons d'options et aux boutons bascule d'un groupe d'options, mais uniquement au groupe d'options.

    La propriété ControlSource s'applique uniquement aux niveaux de regroupement des états.

    Les formulaires et les états se trouvant dans votre base de données se comportent comme des "fenêtres". Pour spécifier la source de données principale d'un formulaire ou d'un état, vous devez affecter une table, une requête ou une instruction SQL à sa propriété RecordSource. Vous pouvez alors affecter à la propriété ControlSource un champ de la source de données ou une expression. Si le paramétrage de la propriété ControlSource est une expression, la valeur affichée n'est accessible qu'en lecture seule et n'est pas enregistrée dans la base de données. Vous pouvez, par exemple, utiliser les paramètres suivants :

    Exemple de paramètre Description
    Nom S'il s'agit d'un contrôle, les données du champ Nom sont affichées dans le contrôle. S'il s'agit d'un niveau de regroupement d'un état, Microsoft Access regroupe les données sur le nom.
    =Date( ) + 7 S'il s'agit d'un contrôle, cette expression affiche la date qu'il sera dans sept jours.
    =DatePart("q",ShippedDate) S'il s'agit d'un contrôle, cette expression affiche le trimestre correspondant à la date d'envoi. S'il s'agit d'un niveau de regroupement d'un état, Microsoft Access regroupe les données sur le trimestre correspondant à la date d'envoi.

    Exemple
    Dans cet exemple, un champ City (Ville) est affecté à la propriété ControlSource d'une zone de texte Adresse :

    Forms!Customers!AddressPart.ControlSource = "City"
    Dans ce exemple, l'expression = Date() + 7 est affectée à la propriété ControlSource d'une zone de texte Expected (Date prévue).

    Me!Expected.ControlSource = "=Date() + 7"
    Désolé mais je ne peux pas faire mieux vu que je ne fais pas de VBA sous ACCESS
    Bon courage et bonne chance

  19. #19
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    Je suis vraiment trop bête...

    j'avais oublié le = après le ControlSource...

    Sinon il me reste à trouver le problème pour cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List_rep.ListStyle = fmListStyleOption
    Même problème que AddItems, il ne reconnait pas ListStyle...

    Y'a-t-il une autre possibilité pour afficher tout mes fichier à la ligne ?

    Avec un index et s'incrémente au fur et à mesure ou qqch comme cela ?

    Merci d'avance.

  20. #20
    Membre à l'essai
    Inscrit en
    Août 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 60
    Points : 19
    Points
    19
    Par défaut
    Personne ne sait ?

Discussions similaires

  1. [Débutant] Afficher une liste de fichiers dans un ListBox
    Par Zwblirgx dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 03/10/2007, 09h47
  2. [JComboBox]Liste de fichiers dans une JComboBox
    Par PM_calou dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 16/08/2007, 12h22
  3. afficher l'icone d'un fichier dans une listbox
    Par krokmitaine dans le forum Delphi
    Réponses: 2
    Dernier message: 30/11/2006, 20h38
  4. [VB6]Lire le contenu d'un fichier dans une listbox
    Par gizmorambo dans le forum VB 6 et antérieur
    Réponses: 24
    Dernier message: 11/04/2006, 12h51
  5. [JSP] liste de fichiers dans une appli web
    Par cyrso dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 21/01/2005, 17h17

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