niamor23
Messages postés11Date d'inscriptionlundi 20 mars 2006StatutMembreDernière intervention 7 janvier 2009
-
21 mars 2006 à 10:54
rvblog
Messages postés792Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention12 juin 2012
-
10 avril 2006 à 11:07
Salut à tous,
Voici mon prb, j'a formulaire sous access, avec une liste déroulante, et je n'arrive pas à insérer des valeus les une en dessous des autres, je ne connait pas les methodes a utiliser dans visual basic.
niamor23
Messages postés11Date d'inscriptionlundi 20 mars 2006StatutMembreDernière intervention 7 janvier 2009 22 mars 2006 à 17:39
ok merci ça fonctionne mais comment ce fais t-il que les valeurs qui sont dans ma liste modifiable n'éxistent plus quand je passe du mode formulaire vers un autre mode (ex mode feuille de données).
merci
a+
Vous n’avez pas trouvé la réponse que vous recherchez ?
rvblog
Messages postés792Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention12 juin 20127 22 mars 2006 à 17:47
Salut niamor,
parceque tu les as ajoutées en mode exécution!
en mode création, fais :
originesource= Liste Valeurs 'ne mets pas de guillemets
contenu = test1;test2;test3 'là non plus
je suis pas sûr du tout du nom de ces 2 proriétés en français, mais c'est quelque chose d'approchant (par défaut, les valeurs doivent être originesource=Table/Requête, et contenu doit être vide, sauf si tu as utilisé l'assistant [si le bouton baguette magique est enfoncé])
PS: si tu aimes la réponse, appuies sur le bouton accepter, ça peut servir à ceux qui font une recherche sur le même thème.
rvblogn<SUP>
</SUP><SUP>Je veux ton bien... et je l'aurais
</SUP>
niamor23
Messages postés11Date d'inscriptionlundi 20 mars 2006StatutMembreDernière intervention 7 janvier 2009 27 mars 2006 à 17:26
g essayé mais ce n'est pas ça si je met pas de guillemet dans originesource, il m'indique 1 erreurs, et dans contenu je ne met pas de guillemet car je récupére le contenu d'une variable.
rvblog
Messages postés792Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention12 juin 20127 27 mars 2006 à 18:24
Au temps pour moi,
j'ai mal lu ce que tu as écris en parenthèses (mode feuille de données).
Ceci dit, si tu exécutes ces 2 instructions dans le Form_Load (ce que je fais), tu remplis ta combo aussi en mode feuilles de données (ce que je vois)!
Alors, qu'est-ce qui m'échappe?
rvblogn<SUP>
</SUP><SUP>Je veux ton bien... et je l'aurais
</SUP>
niamor23
Messages postés11Date d'inscriptionlundi 20 mars 2006StatutMembreDernière intervention 7 janvier 2009 10 avril 2006 à 09:59
Me revoila, je réexplique en détail. Quand je rendre des valeurs dans une zone de texte, puis ensuite je valide par un bouton, je vois bien mes valeurs dans ma liste déroulantes, mais l'inconvénient c que même en enregistrant mes données, si je quitte le formulaires, puis je reviens aprés il n'y sont plus aussi bien dans le formulaire que dans la feuille de données.
si je comprends bien ce qu'il t'arrive, pendant l'exécution, tu ajoutes (par un moyen qui t'appartient) des éléments dans ta liste déroulante (et cela fonctionne), et ceux-ci ne ré-apparaissent pas si ton formulaire est déchargé, puis rechargé (donc s'il a l'occasion, une fois réinitialisé, de remplir à nouveau ta liste déroulante).
Expliqué comme ci-dessus, tu peux comprendre que lorsque le formulaire a été réinitialisé (déchargé, puis rechargé ), et qu'il entreprend de remplir la liste déroulante, il convient de savoir où il va chercher les valeurs qu'il souhaite y faire ré-apparaître.
Si des valeurs sont ré-injectées par le biais d'un bloc d'instruction, et que ces valeurs sont des constantes (en dur dans le code), il n'éprouve aucun mal à les ré-afficher.
Si ces valeurs n'ont eu qu'une (elles n'existaient donc qu'en mémoire de masse virtuellephysique), puisque l'on a une nouvelle instance du formulaire, tout ce qui n'a pas été sérialisé (enregistré sur une mémoire de masse physique) est perdu, et le formulaire est dans l'impossibilité de le ré-afficher.
Donc, la solution réside dans la sérialisation de ce que l'utilisateur de ton application (tout au moins, de ton formulaire) est amené à saisir. Et là, tu as un choix large sur les moyens d'y parvenir : fichier externe (binaire ou texte), base de données (le plus simple lorsqu'on est sous Access), ou sac de propriété (PropertyBag, si tu as modélisé une classe, VB offre la possibilité de sérialiser une de ses instances [à vérifier en VBA]),...
Si tu choisis de sérialiser dans ta base de données, il conviendra peut-être de changer le mode de fonctionnement interne du remplissage de la liste et de la saisie de nouvelles valeurs :
1./ tu implémentes une fonction de lecture des valeurs d'une table, et de remplissage de liste déroulante avec ces valeurs.
2./ tu modifies l'implémentation de la saisie des nouvelles valeurs. Celles-ci ne doivent déroulante, mais dans la table de donnéeset au raffraichissement, grâce à ta fonction de remplissage, elles apparaîtront dans ta liste déroulante).
à+
rvblogn<SUP>
</SUP><SUP>Je veux ton bien... et je l'aurais
</SUP>