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

Access Discussion :

[liste] Ajout valeur + multiselestion


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut [liste] Ajout valeur + multiselestion
    Bonjour deux petites questions

    Alors question 1
    Comment ajouter une valeur à une liste ?

    QUestion 2
    COmment entrer dans un champ plusieurs valeurs d'une liste

    [Ce que j'ai fait Question 1 ]
    si on sait déja la valeur on écrit (cf faq)
    Me!MyList.RowSource=Me!MyList.RowSource & ";NouvelElement"
    Mais si je veux faire saisir cette valeur par l'utilisateur coment je fais
    j'ai essayé

    Me!MyList.RowSource=Me!MyList.RowSource & Me!Texte89
    Mais chou blanc ...

    J'ai aussi essayé de créer une variable locale str et de faire

    Me!MyList.RowSource=Me!MyList.RowSource & ";[str]"
    Mais non plus
    [Ce que j'ai fait question 2]
    Une commande sur un bouton
    Private Sub Valider_Click()
    Dim VarLr As Variant
    Dim StrResult As String
    For Each VarLr In Me![Liste85].ItemsSelected
    StrResult = StrResult & VarLr & ";"
    Next VarLr
    Me![nature des locaux] = StrResult
    End Sub
    je suis arrivé à un résultat mais quand je sélectionne par exemple les 2 pemieres valeurs qui sont disons "arbre" et "panda"
    et bah au lieu de me sortir arbre;panda;
    il me sort 0;1; (numéro de la valeur dans la liste)
    peut etre le "Me!MaListe.ItemsSelected" sélectionne le numéro de la valeur ?

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    slt,

    pour la 1 :

    Code avec un contrôle : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Me!MyList.RowSource=Me!MyList.RowSource & ";" & Me!Texte89
    Code avec une variable : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Me!MyList.RowSource=Me!MyList.RowSource & ";" & str

    il peut être utile de rajouter ensuite un rafraichissement de la liste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me!MyList.RowSource.Requery
    pour la 2 :
    ben c'est une question par message
    même si ce sont des petites questions c'est bien plus pratique

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    Salut, merci beacoup pour la question 1

    pour la question 2 je ne vois pas trop ce que tu veux dire en sachant que ce que je voudrais faire (mais tu as l'air de me proposer une autre manière ce qui irait aussi) c'est sélectionner dans ma liste plusieurs valeurs cliquer sur un bouton qui les entre dans un champ d'une table séparés d'un ;

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 223
    Points : 240
    Points
    240
    Par défaut
    je suis arrivé à un résultat mais quand je sélectionne par exemple les 2 pemieres valeurs qui sont disons "arbre" et "panda"
    et bah au lieu de me sortir arbre;panda;
    il me sort 0;1; (numéro de la valeur dans la liste)
    peut etre le "Me!MaListe.ItemsSelected" sélectionne le numéro de la valeur ?
    Vérifie peut-être au niveau des propriétés de ta liste, le numéro de la colonne liée
    Par exemple :
    tu as 2 colonnes
    0 arbre
    1 panda

    Si colonne liée = 1 alors résultat = 0 et 1
    Si colonne liée = 21 alors résultat = arbre et panda

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    malheuresment je n'ai qu'une colonne car c'est une liste de valeurs

  6. #6
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Ma remarque sur la question 2 c'était juste pour dire que si tu poses plusieurs questions dans le même message ça devient vite le bordel dans les réponses qui se croisent.
    Une question par message c'est la règle

    Sinon pour l'utilisation de ItemSelected fais une recherche dans le forum, tu trouveras ce qu'il faut.

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 223
    Points : 240
    Points
    240
    Par défaut
    essaye ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim VarLr As Variant
    Dim StrResult As String
    For Each VarLr In Me![Liste85].ItemsSelected
    StrResult = StrResult & Me![Liste85].ItemData(VarLr) & ";"
    Next VarLr
    Me.Me![nature des locaux] = StrResult
    En gras, la partie que j'ai changé

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    Il fallait méler les deux en fait

    Me.Liste85.ItemData (Me.Liste85.ItemsSelected(varLr))
    Merci à tous les deux

    Bonne journée

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    Ca marche
    Private Sub Valider_Click()
    Dim varLr As Variant
    Dim StrResult As String
    For Each varLr In Me![Liste85].ItemsSelected
    StrResult = StrResult & Me.Liste85.ItemData(Me.Liste85.ItemsSelected(varLr)) & " ; "
    Next varLr
    Me![nature des locaux] = StrResult
    End Sub
    sauf que il marche que si je selectionne le premier ou les deux premiers ou les 3 premiers de la liste (etc)

    si je selectionne le 2eme et le 3eme ou le 1er et le 4eme (etc)
    ça marche pas

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    Donc alors pour résumer

    Je veux toujours faire une selection multiple

    avec

    Private Sub Valider_Click()
    Dim varLr As Variant
    Dim StrResult As String
    For Each varLr In Me![Liste85].ItemsSelected
    StrResult = StrResult & Me.Liste85.ItemData(Me.Liste85.ItemsSelected(varLr)) & " ; "
    Next varLr
    Me![nature des locaux] = StrResult
    End Sub
    Ca ne marche que pour les premiers lots (1 et 2 ; ou 1 et 2 et 3)
    et ca ne marche pas pours des lots disjoints et ne parant pas de 1 (1 et 3 ; ou 2 et 4)

    A votre avis, qu'est ce qui cloche ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par Arkham46
    Ma remarque sur la question 2 c'était juste pour dire que si tu poses plusieurs questions dans le même message ça devient vite le bordel dans les réponses qui se croisent.
    Une question par message c'est la règle

    Sinon pour l'utilisation de ItemSelected fais une recherche dans le forum, tu trouveras ce qu'il faut.
    tu as raison je mets resolu et je la pose dans un autre post

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

Discussions similaires

  1. [AC-2007] Requete multicriteres par zones de liste : ajouter valeur "*"
    Par nicburger dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 26/09/2011, 11h37
  2. Réponses: 1
    Dernier message: 25/05/2010, 22h57
  3. Réponses: 6
    Dernier message: 08/04/2010, 10h32
  4. Réponses: 1
    Dernier message: 02/12/2009, 17h08
  5. Réponses: 4
    Dernier message: 19/10/2008, 10h25

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