|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : octobre 2007 Messages : 34 ![]() |
Bonjour,
Mon formulaire principal contient un sous formulaire (l'objet est nommé SForm et le formulaire d'origine SousForm) basé sur une requête UNION. (ReqUnion) Les champs d'une requête union ne pouvant être modifiés de façon dynamique, j'execute en VB - une requêtre Création de table avec le contenu de la requête union - puis je réaffecte le recordsource du sous formulaire à la table Temp Code :
- En l'état, aucun enregistrement n'est affiché alors que la table Temp a 5 enregistrement - Si je modifie un champs, un nouvel enregistrement est ajouté à la table Temp et est modifié de façon dynamique - Si je change le type de Recordeset de Dynamique à Instantané, les 5 enregistrement de la table Temp sont affichés mais ne sont pas modifiable. - Enfin, si je recrée un nouveau (Sous-)Formulaire, en mode dynamique, ma table est bien mise à jour. Quelqu'un comprend t'il ce qu'il se passe ? |
||
|
|
00
|
|
|
#2 |
![]() ![]() ![]() |
Bonjour,
Humm, déjà greffes à tes méthodes Execute l'argument dbFailOnError. Le tout bien entendu encapsulé dans une gestion d'erreur idoine. Ensuite créé dynamiquement ta requête via un QueryDefs et de cette requête, tu peux créer une table à condition que si cette table existe (user de INSERT INTO) ou si elle n'existe pas (user de SELECT INTO) ; mais dans les deux cas, il faut spécifier les champs de destination comme ceux de la source. Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
|
|
#3 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : octobre 2007 Messages : 34 ![]() |
Merci pour la réponse, mais je ne comprend pas tout...
J'ai essayé ça : Code :
La requête en mode Feuille de donnée permet bien du visualiser les enregistrementsn, mais le SousFormulaire associé non. Pourtant, en mode création, les contrôles sont bien associés aux champs de la table temp. Je ne comprends vraiment pas |
||
|
|
00
|
|
|
#4 |
![]() ![]() ![]() |
Humm, non, tu n'y es pas du tout...
Quand je dis créer ta requête, c'est ta requête UNION e.g. "ReqUnion". Ensuite,
Argy [MODE PROF] As ce propos, nomme correctement tes objets car ReqUnion et Temp, ce n'est pas très parlant et reste synonyme d'une perspective de maintenance utltérieure ennuyeuse en laissant entrevoir un certain manque de rigueur voire.... [/MODE PROF]
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : octobre 2007 Messages : 34 ![]() |
Merci et désolé pour la réponse tardive.
Pour répondre à tes remarques judicieuse, les noms de mes variables sont plus "propre" que dans le bout de code mais un peu à ralonge et pas très claire hors du contexte. Je crois plus ou moins avoir essayé les deux solutions que tu me proposes (enfin je crois), mais ça ne marche pas. En revanche, je crois que je vais travailler l'idée d'une table temporaire plutôt qu'une requête union. Mon formulaire devrait alors permettre de modifier les champs de façon dynamique. Tout ça reste quand même très étrange. |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() |
Non, non, ne perd pas patience.Le pricipe est simple : Tu montes ta requête UNION telle que tu l'attends. Tu en récupères le code SQL et tu le colle dans une variable. Tu créés ta requêtes avec une vérification de son existence :
Après la transpo en VBA sera un jeu d'enfant. Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com