Bonjour,
Je me pose une question, peut-on créer un seul formulaire commun à plusieurs tables ?
Ou bien faut-il créer autant de formulaires que de table, seul changerait le nom de la table, les champs ayant le même nom.
Bonne journée
Bonjour,
Je me pose une question, peut-on créer un seul formulaire commun à plusieurs tables ?
Ou bien faut-il créer autant de formulaires que de table, seul changerait le nom de la table, les champs ayant le même nom.
Bonne journée
Le mieux est l'ennemi du bien
Bonjour.
Pour répondre à ta question, oui on peut ne faire qu'un seul formulaire et par code changer la source de données.
Un truc du genre :
Il n'est pas obligatoire que ce soit du SQL, je pense que Me.Recordsource="TaTable" fonctionne et il est sur que tu peux faire Me.Recordsource="uneRequete".
Code : Sélectionner tout - Visualiser dans une fenêtre à part Me.Recordsource="select * from TaTable"
À mettre dans l'événement Sur Ouverture (ou sur Chargement, à tester).
Mais si tu as plusieurs tables avec les mêmes champs, peut-être ne devrais-tu n'avoir qu'une seule table.
A+
Vous voulez une réponse rapide et efficace à vos questions téchniques ?
Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.
bonjour,
si, effectivement, les tables ont la même structure, il est possible de mutualiser le formulaire en passant, par exemple, le nom de la source dans les arguments d'ouverture du formulaire (OpenArgs).
1) pour ouvrir le formulaire:
2) et dans l'évènement Form_Open du formulaire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Docmd.openform "monformulaire", openargs:="Table1" ' ou sans nommer le paramètre: Docmd.openform "monformulaire", , , , , , "Table1"
Code : Sélectionner tout - Visualiser dans une fenêtre à part if not isnull(me.openargs) then me.recordsource = openargs
Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
ah non ? donc devant l'écran c'est la connectique ?
Merci tee_grandbois,
Cela doit-être ce que je cherche, dans mon cas, ce sont les tables des comptes PEL et LDD à priori identiques en forme (ou autres) ; c'est vrai que des champs sont aussi identiques, mais j'avais modifié plusieurs noms : ID_PEL et ID_LDD, si j'adopte cette solution, je vais devoir les renommer.
J'hésite à avoir les formulaires en double ou triple ou un seul avec des paramètres différents dans les modules avec des "if" partout :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Set oRst = oDb.OpenRecordset("t_EquilLDD", dbOpenTable)
Le mieux est l'ennemi du bien
depuis un formulaire principal avec un bouton pour chaque compte et pour chacun la bonne table qui va bien, c'est simple:J'hésite à avoir les formulaires en double ou triple ou un seul avec des paramètres différents dans les modules avec des "if" partout :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub bouton1_Click() ' PEL Docmd.openform "monformulaire", openargs:="Table_PEL" end sub ' LDD Private Sub bouton2_Click() Docmd.openform "monformulaire", openargs:="Table_LDD" end sub ' ...à mon sens, c'est contre nature de créer une table par compte, en général, on les regroupe dans une seule table et on les identifie par leur "nature" (compte courant, PEL, LDD, DAT, etc.) et comme chaque compte dans une banque a un identifiant unique (le numéro de compte) c'est facile de les identifier.Cela doit-être ce que je cherche, dans mon cas, ce sont les tables des comptes PEL et LDD à priori identiques en forme (ou autres) ;
Mais bon, c'est ton choix ...
Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
ah non ? donc devant l'écran c'est la connectique ?
Tu as raison, mais je n'avais pas vu le sujet de cette façon, donc je vais repartir avec d'autres bases, les tiennes.à mon sens, c'est contre nature de créer une table par compte, en général, on les regroupe dans une seule table et on les identifie par leur "nature" (compte courant, PEL, LDD, DAT, etc.) et comme chaque compte dans une banque a un identifiant unique (le numéro de compte) c'est facile de les identifier.
Mais bon, c'est ton choix ...
J'avais vu une discussion sur le forum, ou il y avait un super organigramme pour la création d'une comptabilité personnelle, que je n'avais pas bien compris. Maintenant avec ta réponse les choses s'éclairent. Il faut que je retrouve cette discussion de 7 pages.
Le mieux est l'ennemi du bien
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager