-----Message d'origine-----
Salut,
| J'ai un formulaire qui renseigne une table A. Pour
éviter une double saisie
| (mais je vous passe les détails), je veux qu'une de mes
cellules dans ce
| formulaire aille chercher une valeur appelée "moyenne"
dans une table B
| automatiquement quand je rentre dans ce formulaire une
cellule "projet" qui
| lui est associée. Cette valeur sera donc ensuite
intégrée dans la table B.
Tu vas chercher la "moyenne" dans la table B...
.... sera ensuite intégré dans la table B ???
Il y a peut être une erreur de saisie... dans la table A,
peut-être ?
Bref :
Evite les redondances de l'information...
Ne mets pas de "résultats" de calcul dans les tables
- cela se recalcule dans une requête...
N'oublie pas que dans un formulaire, on peut afficher les
information qui viennent de plusieures tables grâce à une
requete source, au lieu d'une table source...
Pour allez chercher un valeur par un DLookup (RechDom)
tu mets comme source d'une zone de texte:
pour un champ numérique:
= DLookup("[LeChamp]";"[LaTable]";"[ChampDeTable]=" &
[ContrôleDuFormulaire] )
pour un champ texte:
= DLookup("[LeChamp]";"[LaTable]";"[ChampDeTable]='" &
[ContrôleDuFormulaire] & "'" )
Va également regarder ceci :
http://www.mvps.org/accessfr/general/gen0018.htm
et fait un tour dans le lien de ma signature...
--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
.
-----Message d'origine-----
Salut,
| J'ai un formulaire qui renseigne une table A. Pour
éviter une double saisie
| (mais je vous passe les détails), je veux qu'une de mes
cellules dans ce
| formulaire aille chercher une valeur appelée "moyenne"
dans une table B
| automatiquement quand je rentre dans ce formulaire une
cellule "projet" qui
| lui est associée. Cette valeur sera donc ensuite
intégrée dans la table B.
Tu vas chercher la "moyenne" dans la table B...
.... sera ensuite intégré dans la table B ???
Il y a peut être une erreur de saisie... dans la table A,
peut-être ?
Bref :
Evite les redondances de l'information...
Ne mets pas de "résultats" de calcul dans les tables
- cela se recalcule dans une requête...
N'oublie pas que dans un formulaire, on peut afficher les
information qui viennent de plusieures tables grâce à une
requete source, au lieu d'une table source...
Pour allez chercher un valeur par un DLookup (RechDom)
tu mets comme source d'une zone de texte:
pour un champ numérique:
= DLookup("[LeChamp]";"[LaTable]";"[ChampDeTable]=" &
[ContrôleDuFormulaire] )
pour un champ texte:
= DLookup("[LeChamp]";"[LaTable]";"[ChampDeTable]='" &
[ContrôleDuFormulaire] & "'" )
Va également regarder ceci :
http://www.mvps.org/accessfr/general/gen0018.htm
et fait un tour dans le lien de ma signature...
--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
.
-----Message d'origine-----
Salut,
| J'ai un formulaire qui renseigne une table A. Pour
éviter une double saisie
| (mais je vous passe les détails), je veux qu'une de mes
cellules dans ce
| formulaire aille chercher une valeur appelée "moyenne"
dans une table B
| automatiquement quand je rentre dans ce formulaire une
cellule "projet" qui
| lui est associée. Cette valeur sera donc ensuite
intégrée dans la table B.
Tu vas chercher la "moyenne" dans la table B...
.... sera ensuite intégré dans la table B ???
Il y a peut être une erreur de saisie... dans la table A,
peut-être ?
Bref :
Evite les redondances de l'information...
Ne mets pas de "résultats" de calcul dans les tables
- cela se recalcule dans une requête...
N'oublie pas que dans un formulaire, on peut afficher les
information qui viennent de plusieures tables grâce à une
requete source, au lieu d'une table source...
Pour allez chercher un valeur par un DLookup (RechDom)
tu mets comme source d'une zone de texte:
pour un champ numérique:
= DLookup("[LeChamp]";"[LaTable]";"[ChampDeTable]=" &
[ContrôleDuFormulaire] )
pour un champ texte:
= DLookup("[LeChamp]";"[LaTable]";"[ChampDeTable]='" &
[ContrôleDuFormulaire] & "'" )
Va également regarder ceci :
http://www.mvps.org/accessfr/general/gen0018.htm
et fait un tour dans le lien de ma signature...
--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
.
-----Message d'origine-----
Salut,
Mais j'essaye ton code (et c'est celle que j'avais en
simplifiée) mais cela ne marche toujours pas,
meuuuh si ;-)
je ne comprends pas. Qu'entends-tu par "[ChampDeTable]"?
Et peux-
tu me donner un exemple?
Moi, par exemple, j'ai créé deux tables pour faire un
essai: NOM et AGE
la table NOM contient les champs Nom et Prénom; la table
AGE contient les champs Age et Nom. Je crée un formulaire
avec les champs Nom et prénom et je rajoute une zone de
texte qui doit aller me chercher le champ age dans la
table age. Que dois-je taper? Moi, je tape:
=DLookup("[age]";"[Table AGE]";"[Nom]="&[nom])
Ton exemple est très mal choisi...
Pour faire cela, tu devrais créer une relation entre :
le champ [Nom] de la table "Nom" et le champ [Nom]
de la table "Age"
ensuite, tu crée une requête qui reprend les champs :
[Nom], [Prénom] de la table "Nom" et [Age] de la
table "Age"
Grâce à la relation, les [Age] vont correspondrent
avec les bonnes personnes.
Mais STOP !!!!!!!!!
- Ne pas appeller un champ [Nom] plutôt [NomFamille]
ou [LastName]
- Ne pas utiliser un nom dans une relation... que
fais tu lorsque tu saisi un second "Durant" ?
- Ne pas mettre l'age dans une "autre" table... l'age
étant propre à la personne, il doit se trouvé
dans la même table que son nom, prénom, adresse...
Bon, je sais, ce n'était qu'un exemple... mais, très
mal choisi ;-))
Revenons à la fonction DLookup...
Ce n'est pas à utiliser dans une table bien sûr... il
faut considérer que les tables
ne sont que des "récipients" où l'on place les
données (des amoires ou étagères... quoi ;)
Le travail sur les données se fait dans les
formulaires, la saisie dans les tables est réservé
au test ou autre intervention.
Donc :
Table "Noms", champ [Nom], [Prénom]
Table "Ages", champ [Nom] , [Age]
Tu crée donc un formulaire basé, dans ton exemple,
sur la table "Noms"
Dans ce formulaire, tu crée deux zones de texte
dépendantes, [Nom] et [Prénom]
et une troisième, indépendante, qui aura comme
source :
= DLookup("[Age]";"[Ages]";"[Nom]='" & Me![Nom] & "'")
Je répète que l'exemple est crado comme pas
possible ;-)))
C'est vraiment juste pour l'exemple, hein ???
Va aussi regarder le lien que j'avais mis...
Sinon, un minimum de formation, auto-formation,
lecture sera utile !
--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
.
-----Message d'origine-----
Salut,
Mais j'essaye ton code (et c'est celle que j'avais en
simplifiée) mais cela ne marche toujours pas,
meuuuh si ;-)
je ne comprends pas. Qu'entends-tu par "[ChampDeTable]"?
Et peux-
tu me donner un exemple?
Moi, par exemple, j'ai créé deux tables pour faire un
essai: NOM et AGE
la table NOM contient les champs Nom et Prénom; la table
AGE contient les champs Age et Nom. Je crée un formulaire
avec les champs Nom et prénom et je rajoute une zone de
texte qui doit aller me chercher le champ age dans la
table age. Que dois-je taper? Moi, je tape:
=DLookup("[age]";"[Table AGE]";"[Nom]="&[nom])
Ton exemple est très mal choisi...
Pour faire cela, tu devrais créer une relation entre :
le champ [Nom] de la table "Nom" et le champ [Nom]
de la table "Age"
ensuite, tu crée une requête qui reprend les champs :
[Nom], [Prénom] de la table "Nom" et [Age] de la
table "Age"
Grâce à la relation, les [Age] vont correspondrent
avec les bonnes personnes.
Mais STOP !!!!!!!!!
- Ne pas appeller un champ [Nom] plutôt [NomFamille]
ou [LastName]
- Ne pas utiliser un nom dans une relation... que
fais tu lorsque tu saisi un second "Durant" ?
- Ne pas mettre l'age dans une "autre" table... l'age
étant propre à la personne, il doit se trouvé
dans la même table que son nom, prénom, adresse...
Bon, je sais, ce n'était qu'un exemple... mais, très
mal choisi ;-))
Revenons à la fonction DLookup...
Ce n'est pas à utiliser dans une table bien sûr... il
faut considérer que les tables
ne sont que des "récipients" où l'on place les
données (des amoires ou étagères... quoi ;)
Le travail sur les données se fait dans les
formulaires, la saisie dans les tables est réservé
au test ou autre intervention.
Donc :
Table "Noms", champ [Nom], [Prénom]
Table "Ages", champ [Nom] , [Age]
Tu crée donc un formulaire basé, dans ton exemple,
sur la table "Noms"
Dans ce formulaire, tu crée deux zones de texte
dépendantes, [Nom] et [Prénom]
et une troisième, indépendante, qui aura comme
source :
= DLookup("[Age]";"[Ages]";"[Nom]='" & Me![Nom] & "'")
Je répète que l'exemple est crado comme pas
possible ;-)))
C'est vraiment juste pour l'exemple, hein ???
Va aussi regarder le lien que j'avais mis...
Sinon, un minimum de formation, auto-formation,
lecture sera utile !
--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
.
-----Message d'origine-----
Salut,
Mais j'essaye ton code (et c'est celle que j'avais en
simplifiée) mais cela ne marche toujours pas,
meuuuh si ;-)
je ne comprends pas. Qu'entends-tu par "[ChampDeTable]"?
Et peux-
tu me donner un exemple?
Moi, par exemple, j'ai créé deux tables pour faire un
essai: NOM et AGE
la table NOM contient les champs Nom et Prénom; la table
AGE contient les champs Age et Nom. Je crée un formulaire
avec les champs Nom et prénom et je rajoute une zone de
texte qui doit aller me chercher le champ age dans la
table age. Que dois-je taper? Moi, je tape:
=DLookup("[age]";"[Table AGE]";"[Nom]="&[nom])
Ton exemple est très mal choisi...
Pour faire cela, tu devrais créer une relation entre :
le champ [Nom] de la table "Nom" et le champ [Nom]
de la table "Age"
ensuite, tu crée une requête qui reprend les champs :
[Nom], [Prénom] de la table "Nom" et [Age] de la
table "Age"
Grâce à la relation, les [Age] vont correspondrent
avec les bonnes personnes.
Mais STOP !!!!!!!!!
- Ne pas appeller un champ [Nom] plutôt [NomFamille]
ou [LastName]
- Ne pas utiliser un nom dans une relation... que
fais tu lorsque tu saisi un second "Durant" ?
- Ne pas mettre l'age dans une "autre" table... l'age
étant propre à la personne, il doit se trouvé
dans la même table que son nom, prénom, adresse...
Bon, je sais, ce n'était qu'un exemple... mais, très
mal choisi ;-))
Revenons à la fonction DLookup...
Ce n'est pas à utiliser dans une table bien sûr... il
faut considérer que les tables
ne sont que des "récipients" où l'on place les
données (des amoires ou étagères... quoi ;)
Le travail sur les données se fait dans les
formulaires, la saisie dans les tables est réservé
au test ou autre intervention.
Donc :
Table "Noms", champ [Nom], [Prénom]
Table "Ages", champ [Nom] , [Age]
Tu crée donc un formulaire basé, dans ton exemple,
sur la table "Noms"
Dans ce formulaire, tu crée deux zones de texte
dépendantes, [Nom] et [Prénom]
et une troisième, indépendante, qui aura comme
source :
= DLookup("[Age]";"[Ages]";"[Nom]='" & Me![Nom] & "'")
Je répète que l'exemple est crado comme pas
possible ;-)))
C'est vraiment juste pour l'exemple, hein ???
Va aussi regarder le lien que j'avais mis...
Sinon, un minimum de formation, auto-formation,
lecture sera utile !
--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
.
Sinon, c'est quoi le Me??? Il n'y était pas dans la formule que
tu m'avais donnée? (il faut tout me dire à moi).
Et je croyais que la formule n'était pas celle-là pour les numériques?
Sinon, j'ai essayé et il me met dans la case: #Nom?
Sinon, c'est quoi le Me??? Il n'y était pas dans la formule que
tu m'avais donnée? (il faut tout me dire à moi).
Et je croyais que la formule n'était pas celle-là pour les numériques?
Sinon, j'ai essayé et il me met dans la case: #Nom?
Sinon, c'est quoi le Me??? Il n'y était pas dans la formule que
tu m'avais donnée? (il faut tout me dire à moi).
Et je croyais que la formule n'était pas celle-là pour les numériques?
Sinon, j'ai essayé et il me met dans la case: #Nom?