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 :

[VBA][Zone de liste modifiable] sauvegarde d'une modification de source


Sujet :

Access

  1. #1
    Expert éminent Avatar de garn
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Janvier 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 487
    Points : 6 032
    Points
    6 032
    Par défaut [VBA][Zone de liste modifiable] sauvegarde d'une modification de source
    Bonjour,

    apres divers essais et lecture de la faq access et de la recherche du forum,
    je me suis servi de la faq a ces deux endroits

    http://access.developpez.com/faq/?page=zdl#AbsDsListe

    http://access.developpez.com/faq/?page=zdl#AddItem

    pour créer mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Commande93_Click()
     
    Dim NewData As String
    Dim Response As Integer
     
    NewData = Me.Modifiable91.Value
    If Msgbox("Voulez-vous ajouter " & NewData & " à la liste des secteurs d'activité ?", _
        vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes Then
    Me!Modifiable91.RowSource = Me!Modifiable91.RowSource & ";" & Chr(34) + "" & Me.Modifiable91.Value & "" + Chr(34)
    End If
     
    End Sub

    qui a pour but d'ajouter la valeur courante de la zone de liste modifiable dans la liste des valeurs de base afin de la retrouver plus tard sans avoir a la retaper, en cliquant sur un bouton ( la commande93). Rien de bien extraordinaire

    ce que je ne comprend pas, c'est que la liste est bien mise a jour sur le formulaire courant ( je peux aller a l'enregistrement précédent et la retrouver ) mais n'est pas sauvegardée quand on quitte le formulaire ( je ne retrouve plus la valeur rentrée juste avant , passer en mode création pour vérifier la source de ce controle : meme effet, plus rien n'a été ajouté )

    Pour moi ca voudrait dire que soit la source n'est pas mise a jour soit elle est écrasée. J'ai bien essayé de supprimer dans la table source la liste de valeurs correspondante et ne la laisser que sur le formulaire mais aucun effet

    Quelqu'un saurait ou j'ai oublié une option ou autre?

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Ta zone de liste a pour RowSource une liste de valeurs ou une table/requête?

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  3. #3
    Expert éminent Avatar de garn
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Janvier 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 487
    Points : 6 032
    Points
    6 032
    Par défaut
    Bonjour,

    la source est une liste de valeurs.

  4. #4
    Expert éminent Avatar de garn
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Janvier 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 487
    Points : 6 032
    Points
    6 032
    Par défaut
    j'ai fait plusieurs test et cherché un peu partout, pas vu d'exemple correspondant a mon cas, la source de la zone de liste se mets a jour seulement temporairement, des qu'on ferme le formulaire ou qu'on passe en mode création elle revient a zero. Et pourtant je n'ai rien en form_load, form_open ou autre qui puisse gener et le champ source dans la table n'est pas en rapport

    est ce seulement possible de mettre a jour la source ( rowsource )d'une zone de liste deroulante ayant pour rowSourcetype "Liste valeurs" ?

    Ou n'est ce possible que si la liste est basé sur une "table / requête" ( auquel cas je ne pense pas avoir de probleme, une requete mettra a jour la table, mais je voulais éviter de passer par la, si je dois créer une table pour chacune de mes listes ca va faire beaucoup )

  5. #5
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Si la zone de liste a pour row source une table/requête, il faut mettre à jour la table correspondante.
    Si la zone de liste a pour rowsource une liste de valeurs, pour ne pas perdre la mise à jour, il faut mettre à jour cette liste en mode CREATION du formulaire qui la contient. Est-ce possible dans ton cas?

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  6. #6
    Expert éminent Avatar de garn
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Janvier 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 487
    Points : 6 032
    Points
    6 032
    Par défaut
    Citation Envoyé par pgz
    Bonjour,


    Si la zone de liste a pour rowsource une liste de valeurs, pour ne pas perdre la mise à jour, il faut mettre à jour cette liste en mode CREATION du formulaire qui la contient. Est-ce possible dans ton cas?

    pgz
    erg

    ok ! je savais pas que c'etait obligatoire, et pourtant c'est logique, je suis bete >_<

    bah, c'est pas impossible, je vais devoir passer en mode création par macro mais au moins j'ai la solution

    merci !

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

Discussions similaires

  1. [XL-2007] Charger une zone de liste modifiable à partir d'un code VBA
    Par medino55 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/03/2013, 16h15
  2. Réponses: 2
    Dernier message: 12/04/2006, 10h00
  3. Créer une zone de liste modifiable
    Par ALX79 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 27/10/2005, 16h09
  4. Réponses: 5
    Dernier message: 06/09/2005, 02h50
  5. Réponses: 2
    Dernier message: 17/02/2005, 00h00

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