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 :

Maj zone liste déroulante dans formulaire après clique bouton [AC-2007]


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 13
    Points : 6
    Points
    6
    Par défaut Maj zone liste déroulante dans formulaire après clique bouton
    Bonjour à tous,

    J'ai crée un formulaire avec une zone de liste déroulante alimenté par une requête.
    Il y a aussi un bouton qui permet de supprimer l'enregistrement actuellement visible dans la zone de liste déroulante.
    Tout marche nikel, mais je voudrais bien que l'enregistrement visible dans la zone de liste déroulante n'apparaisse plus après son effacement.
    J'ai fait un forms!monformulaire!.malistedéroulante.requery, la liste est bien mise à jour (plus de **suppression), mais toujours l'enregistrement supprimé visible.
    J'ai tenté le .repaint, pas mieux

    Je suis sur qu'il doit exister une commande, mais j'arrive pas a mettre la main dessus.

    Si vous avez ca sous la main, je suis preneur.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 200
    Points : 76
    Points
    76
    Par défaut
    Bonjour,

    Vas dans les propriétés évènement de ta liste et cliques sur les "..." du champ : Sur Abscence dans la liste

    Essaies le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Met à jour la zone de liste déroulante
    Me.champe_liste.RowSource = "SELECT table.[champ] FROM table; "
    J'allais poser une question similaire :
    J'ai un problème parce que j'ai plusieurs listes à mettre a jour avec de nouvelles données du coup j'utilise ce code :
    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
    Private Sub N°DAS_Texte_NotInList(NewData As String, Response As Integer)
    'Désactive l affichage des messages système
    DoCmd.SetWarnings False
     
    'Met à jour la table Elevage avec la nouvelle donnée NewData
    DoCmd.RunSQL "INSERT INTO DAS ( [N°DAS] ) SELECT " & NewData & " AS Expr2;"
     
    'Met à jour la zone de liste déroulante
    Me.N°DAS_Texte.RowSource = "SELECT DAS.[N°DAS] FROM DAS; "
     
    'Intercepte l'erreur et l'inhibe
    Response = acDataErrContinue
     
    'Active l affichage des messages système
    DoCmd.SetWarnings True
    End Sub
    mon problème est que pour une liste ça marche mais pour les autres listes, la sélection devient blanche sur le formulaire.
    Les données sont bien rentrées dans la base pourtant ...

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Citation Envoyé par AMDMAN Voir le message
    Il y a aussi un bouton qui permet de supprimer l'enregistrement actuellement visible dans la zone de liste déroulante.
    Quel est le code que tu utilises ?
    Supprimes-tu l'élément de la source ?
    Est-ce définitivement ou temporairement ?

    Philippe

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    --> Merci Petit rasta, j'essayerais ça demain.

    --> Philippe, voici le code que j'utilise pour supprimer l'enregistrement visible dans la zone de liste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub cmd_supp_Click()
     
    Dim sql_string As String
    sql_string = "delete from t_ville where ville=""" & liste_ville.Column(0) & """"
     
    DoCmd.RunSQL (sql_string)
     
    Forms!f_ville_suppression!.liste_ville.Requery
    Je supprime définitivement l'élément de la source.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms!f_ville_suppression!.liste_ville.Requery
    Ceci me permet de mettre a jour le contenu dans la zone de liste déroulante, en effaçant l'enregistrement qui restait en status ***supprimé

    en fait ce que je veux, c'est après avoir cliqué sur le bouton qui sert à supprimer l'enregistrement présent dans la zone texte déroulante, que la zone de texte ne contienne plus l'enregistrement supprimé

    Cordialement,

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Bonjour à tous,

    J'ai trouvé la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    liste_ville.Value = Null
    C'est aussi bête que ça.

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

Discussions similaires

  1. [AC-2010] Zone de liste déroulante dans formulaire
    Par aurelien76 dans le forum IHM
    Réponses: 1
    Dernier message: 13/06/2013, 19h15
  2. maj liste déroulante dans formulaire
    Par Mosland dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 17/05/2012, 18h34
  3. [AC-2002] Problème zone de liste déroulante dans formulaire de saisie :
    Par boubas53 dans le forum IHM
    Réponses: 9
    Dernier message: 12/03/2012, 15h39
  4. Réponses: 1
    Dernier message: 06/05/2007, 22h54
  5. liste déroulante dans formulaire continu
    Par remi59 dans le forum Access
    Réponses: 7
    Dernier message: 31/03/2006, 09h40

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