J'ai un formulaire où l'utilisateur saisit par l'intermédiaire de 2
listes déroulantes un établissement et un client. Ces 2 contrôles sont
des contrôles de liste modifiable basées sur des requêtes sql.
Le dernier est le déroulant sur les clients. Si l'utilisateur revient
sur le déroulant établissement et qu'il change d'établissement, le
déroulant client affiche encore la première sélection (c'est-à-dire ceux
basés sur la première sélection).
Le 1er déroulant s'appelle : codetab et le second déroulant pour les
clients : CodeClient.
J'ai mis ceci sur réception focus du CodeClient :
Me!CodeClient.Dropdown
DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
J'ai l'erreur suivante :
erreur 2109 : Il n'y a pas de champ nommé
Forms![Choix_cli_fact_perso]![Codetab].
Je ne suis pas certain de l'avoir mis au bon endroit et ni sur le bon
contrôle.
D'autre part, le champ Codetab dans le formulaire existe bien (puisque
c'est le déroulant établissement).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Didier Bicking
Cette ligne : DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
peut s'écrire plus simplement : Forms![Choix_cli_fact_perso]![Codetab].Requery
Mieux encore : si tu es toujours dans le même formulaire, tu peux écrire : Me!Codetab.Requery
Si tu veux que le champ client devienne vide lorsque tu as choisi un établissement, écris dans "Après mise à jour" du controle Codetab : Me!CodeClient.Requery Me!CodeClient = Null
Si tu as une relation entre les établissements et les clients, tu peux souhaiter qu'une fois choisi un établissement, la liste des clients ne contienne que les clients de l'établissement choisi. Il faut alors, dans la requête source des données du contrôle CodeClient, mettre le critère CodeTab dans la colonne de l'établissement.
Ai-je répondu à tout ?
-- Bon courage
Didier Bicking
http://perso.wanadoo.fr/dbicking
"Gundt" a écrit dans le message de news: 4602f629$0$1276$
bonsoir à tous,
J'ai un formulaire où l'utilisateur saisit par l'intermédiaire de 2 listes déroulantes un établissement et un client. Ces 2 contrôles sont des contrôles de liste modifiable basées sur des requêtes sql. Le dernier est le déroulant sur les clients. Si l'utilisateur revient sur le déroulant établissement et qu'il change d'établissement, le déroulant client affiche encore la première sélection (c'est-à-dire ceux basés sur la première sélection).
Le 1er déroulant s'appelle : codetab et le second déroulant pour les clients : CodeClient.
J'ai mis ceci sur réception focus du CodeClient : Me!CodeClient.Dropdown DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
J'ai l'erreur suivante : erreur 2109 : Il n'y a pas de champ nommé Forms![Choix_cli_fact_perso]![Codetab].
Je ne suis pas certain de l'avoir mis au bon endroit et ni sur le bon contrôle. D'autre part, le champ Codetab dans le formulaire existe bien (puisque c'est le déroulant établissement).
Comment écrire la bonne syntaxe ?
Merci de votre aide.
Gundt
Cette ligne :
DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
peut s'écrire plus simplement :
Forms![Choix_cli_fact_perso]![Codetab].Requery
Mieux encore : si tu es toujours dans le même formulaire, tu peux écrire :
Me!Codetab.Requery
Si tu veux que le champ client devienne vide lorsque tu as choisi un
établissement, écris dans "Après mise à jour" du controle Codetab :
Me!CodeClient.Requery
Me!CodeClient = Null
Si tu as une relation entre les établissements et les clients, tu peux
souhaiter qu'une fois choisi un établissement, la liste des clients ne
contienne que les clients de l'établissement choisi. Il faut alors, dans la
requête source des données du contrôle CodeClient, mettre le critère CodeTab
dans la colonne de l'établissement.
"Gundt" <e.trolle@laposte.net> a écrit dans le message de news:
4602f629$0$1276$426a74cc@news.free.fr...
bonsoir à tous,
J'ai un formulaire où l'utilisateur saisit par l'intermédiaire de 2 listes
déroulantes un établissement et un client. Ces 2 contrôles sont des
contrôles de liste modifiable basées sur des requêtes sql.
Le dernier est le déroulant sur les clients. Si l'utilisateur revient sur
le déroulant établissement et qu'il change d'établissement, le déroulant
client affiche encore la première sélection (c'est-à-dire ceux basés sur
la première sélection).
Le 1er déroulant s'appelle : codetab et le second déroulant pour les
clients : CodeClient.
J'ai mis ceci sur réception focus du CodeClient :
Me!CodeClient.Dropdown
DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
J'ai l'erreur suivante :
erreur 2109 : Il n'y a pas de champ nommé
Forms![Choix_cli_fact_perso]![Codetab].
Je ne suis pas certain de l'avoir mis au bon endroit et ni sur le bon
contrôle.
D'autre part, le champ Codetab dans le formulaire existe bien (puisque
c'est le déroulant établissement).
Cette ligne : DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
peut s'écrire plus simplement : Forms![Choix_cli_fact_perso]![Codetab].Requery
Mieux encore : si tu es toujours dans le même formulaire, tu peux écrire : Me!Codetab.Requery
Si tu veux que le champ client devienne vide lorsque tu as choisi un établissement, écris dans "Après mise à jour" du controle Codetab : Me!CodeClient.Requery Me!CodeClient = Null
Si tu as une relation entre les établissements et les clients, tu peux souhaiter qu'une fois choisi un établissement, la liste des clients ne contienne que les clients de l'établissement choisi. Il faut alors, dans la requête source des données du contrôle CodeClient, mettre le critère CodeTab dans la colonne de l'établissement.
Ai-je répondu à tout ?
-- Bon courage
Didier Bicking
http://perso.wanadoo.fr/dbicking
"Gundt" a écrit dans le message de news: 4602f629$0$1276$
bonsoir à tous,
J'ai un formulaire où l'utilisateur saisit par l'intermédiaire de 2 listes déroulantes un établissement et un client. Ces 2 contrôles sont des contrôles de liste modifiable basées sur des requêtes sql. Le dernier est le déroulant sur les clients. Si l'utilisateur revient sur le déroulant établissement et qu'il change d'établissement, le déroulant client affiche encore la première sélection (c'est-à-dire ceux basés sur la première sélection).
Le 1er déroulant s'appelle : codetab et le second déroulant pour les clients : CodeClient.
J'ai mis ceci sur réception focus du CodeClient : Me!CodeClient.Dropdown DoCmd.Requery "Forms![Choix_cli_fact_perso]![Codetab]"
J'ai l'erreur suivante : erreur 2109 : Il n'y a pas de champ nommé Forms![Choix_cli_fact_perso]![Codetab].
Je ne suis pas certain de l'avoir mis au bon endroit et ni sur le bon contrôle. D'autre part, le champ Codetab dans le formulaire existe bien (puisque c'est le déroulant établissement).
Comment écrire la bonne syntaxe ?
Merci de votre aide.
Gundt
Gundt
Bonjour à tous,
[...] Me!CodeClient.Requery
Me!CodeClient = Null
Si tu as une relation entre les établissements et les clients, tu peux souhaiter qu'une fois choisi un établissement, la liste des clients ne contienne que les clients de l'établissement choisi. Il faut alors, dans la requête source des données du contrôle CodeClient, mettre le critère CodeTab dans la colonne de l'établissement. Ok, c'est fait.
Ai-je répondu à tout ?
Oui; c'est très bien. Cela marche : c'est formidable.
Mais un autre problème est apparu : le déroulant sur Codetab ne fonctionne plus.
Sur Codetab, j'ai 2 procédures :
Private Sub Codetab_GotFocus() Me!Codetab.Dropdown Me!Codetab.Requery End Sub
et l'autre : Private Sub Codetab_AfterUpdate() Me!CodeClient.Requery Me!CodeClient = Null End Sub
et ensuite, quand on arrive sur Codeclient : Private Sub CodeClient_GotFocus() Me!CodeClient.Dropdown Me!Codetab.Requery End Sub
Ai-je bien placé le code au bon endroit et pourquoi le déroulant fonctionne encore sur CodeClient et pas sur Codetab ?
Un grand merci à Didier.
Gundt
Bonjour à tous,
[...] Me!CodeClient.Requery
Me!CodeClient = Null
Si tu as une relation entre les établissements et les clients, tu peux
souhaiter qu'une fois choisi un établissement, la liste des clients ne
contienne que les clients de l'établissement choisi. Il faut alors, dans la
requête source des données du contrôle CodeClient, mettre le critère CodeTab
dans la colonne de l'établissement.
Ok, c'est fait.
Ai-je répondu à tout ?
Oui; c'est très bien. Cela marche : c'est formidable.
Mais un autre problème est apparu : le déroulant sur Codetab ne
fonctionne plus.
Sur Codetab, j'ai 2 procédures :
Private Sub Codetab_GotFocus()
Me!Codetab.Dropdown
Me!Codetab.Requery
End Sub
et l'autre :
Private Sub Codetab_AfterUpdate()
Me!CodeClient.Requery
Me!CodeClient = Null
End Sub
et ensuite, quand on arrive sur Codeclient :
Private Sub CodeClient_GotFocus()
Me!CodeClient.Dropdown
Me!Codetab.Requery
End Sub
Ai-je bien placé le code au bon endroit et pourquoi le déroulant
fonctionne encore sur CodeClient et pas sur Codetab ?
Si tu as une relation entre les établissements et les clients, tu peux souhaiter qu'une fois choisi un établissement, la liste des clients ne contienne que les clients de l'établissement choisi. Il faut alors, dans la requête source des données du contrôle CodeClient, mettre le critère CodeTab dans la colonne de l'établissement. Ok, c'est fait.
Ai-je répondu à tout ?
Oui; c'est très bien. Cela marche : c'est formidable.
Mais un autre problème est apparu : le déroulant sur Codetab ne fonctionne plus.
Sur Codetab, j'ai 2 procédures :
Private Sub Codetab_GotFocus() Me!Codetab.Dropdown Me!Codetab.Requery End Sub
et l'autre : Private Sub Codetab_AfterUpdate() Me!CodeClient.Requery Me!CodeClient = Null End Sub
et ensuite, quand on arrive sur Codeclient : Private Sub CodeClient_GotFocus() Me!CodeClient.Dropdown Me!Codetab.Requery End Sub
Ai-je bien placé le code au bon endroit et pourquoi le déroulant fonctionne encore sur CodeClient et pas sur Codetab ?
Un grand merci à Didier.
Gundt
Gundt
bonjour à tous,
et ensuite, quand on arrive sur Codeclient : Private Sub CodeClient_GotFocus() Me!CodeClient.Dropdown Me!Codetab.Requery End Sub J'ai inversé les 2 lignes Me! et ça marche.
Comment n'y ai-je pas pensé plus tôt ? :-(
Ai-je bien placé le code au bon endroit et pourquoi le déroulant fonctionne encore sur CodeClient et pas sur Codetab ?
Un grand merci à Didier.
Gundt
bonjour à tous,
et ensuite, quand on arrive sur Codeclient :
Private Sub CodeClient_GotFocus()
Me!CodeClient.Dropdown
Me!Codetab.Requery
End Sub
J'ai inversé les 2 lignes Me! et ça marche.
Comment n'y ai-je pas pensé plus tôt ? :-(
Ai-je bien placé le code au bon endroit et pourquoi le déroulant
fonctionne encore sur CodeClient et pas sur Codetab ?
et ensuite, quand on arrive sur Codeclient : Private Sub CodeClient_GotFocus() Me!CodeClient.Dropdown Me!Codetab.Requery End Sub J'ai inversé les 2 lignes Me! et ça marche.
Comment n'y ai-je pas pensé plus tôt ? :-(
Ai-je bien placé le code au bon endroit et pourquoi le déroulant fonctionne encore sur CodeClient et pas sur Codetab ?