Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec RechDom

7 réponses
Avatar
daniel
Bonsoir,
J'essaye désespérement qu'une zone de texte affiche le gestionnaire d'un
code client :
J'ai un formulaire dans lequel je mets une liste modifiable pour afficher
une agence:
SELECT [STA_ST_1].[Numéro de guichet] FROM STA_ST_1 GROUP BY
[STA_ST_1].[Numéro de guichet] ORDER BY [STA_ST_1].[Numéro de guichet];
(STA_ST_1 est un fichier texte lié)

une procédure évènementielle :
Private Sub Mod_Ch_Agce_AfterUpdate()
Me.Mod_Ch_CodeClient = ""
Me.Mod_Ch_CodeClient.Requery
Me.Mod_Ch_CodeClient.SetFocus
Me.Mod_Ch_CodeClient.Dropdown
End Sub

alimente une liste modifiable : Mod_Ch_CodeClient
dans laquelle je souhaite faire une sélection, et à partir de ce choix,
j'aimerais que certains champs de la table liée "STA_ST_1" s'affiche dans
une zone de texte en utilisant RechDom.

différentes tentatives (Gestionnaire est un des champs de "STA_ST_1") :
=RechDom("Gestionnaire";"STA_ST_1";"[Code
Client]=[accueil]![Mod_Ch_CodeClient]")
=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]=[accueil]![Mod_Ch_CodeClient]")
avec/sans crochets, avec/sans guillemets....

Mais ACCESS me répond :
"L'expression entrée comme paramètre de requête est à l'origine de l'erreur
suivante : 'L'objet en contient pas d'objet d'automatisation
'accueil!Mod_Ch_CodeClient".

Par avance, merci de me dire si c'est possible,ou, où je commets l'erreur,
voire me donner des liens avec des bases utilisant déjà RechDom, je n'en
trouve pas pour l'instant...
Je débute dans les formulaires, aussi, n'hésitez pas à détailler au maximum.
Bonne journée.
DanielH

7 réponses

Avatar
Gilbert
Bonjour

Qu'est Accueil dans ta base?
Si c'est le nom du formulaire actif, tu peux ou plutôt tu dois remplacer
accueil!Mod_Ch_CodeClient
par
Me.Mod_Ch_CodeClient
ou par
Forms("accueil")!Mod_Ch_CodeClient

--
Cordialement,

Gilbert


"daniel" a écrit dans le message de
news:u%
Bonsoir,
J'essaye désespérement qu'une zone de texte affiche le gestionnaire d'un
code client :
J'ai un formulaire dans lequel je mets une liste modifiable pour afficher
une agence:
SELECT [STA_ST_1].[Numéro de guichet] FROM STA_ST_1 GROUP BY
[STA_ST_1].[Numéro de guichet] ORDER BY [STA_ST_1].[Numéro de guichet];
(STA_ST_1 est un fichier texte lié)

une procédure évènementielle :
Private Sub Mod_Ch_Agce_AfterUpdate()
Me.Mod_Ch_CodeClient = ""
Me.Mod_Ch_CodeClient.Requery
Me.Mod_Ch_CodeClient.SetFocus
Me.Mod_Ch_CodeClient.Dropdown
End Sub

alimente une liste modifiable : Mod_Ch_CodeClient
dans laquelle je souhaite faire une sélection, et à partir de ce choix,
j'aimerais que certains champs de la table liée "STA_ST_1" s'affiche dans
une zone de texte en utilisant RechDom.

différentes tentatives (Gestionnaire est un des champs de "STA_ST_1") :
=RechDom("Gestionnaire";"STA_ST_1";"[Code
Client]=[accueil]![Mod_Ch_CodeClient]")
=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]=[accueil]![Mod_Ch_CodeClient]")
avec/sans crochets, avec/sans guillemets....

Mais ACCESS me répond :
"L'expression entrée comme paramètre de requête est à l'origine de


l'erreur
suivante : 'L'objet en contient pas d'objet d'automatisation
'accueil!Mod_Ch_CodeClient".

Par avance, merci de me dire si c'est possible,ou, où je commets


l'erreur,
voire me donner des liens avec des bases utilisant déjà RechDom, je n'en
trouve pas pour l'instant...
Je débute dans les formulaires, aussi, n'hésitez pas à détailler au


maximum.
Bonne journée.
DanielH





Avatar
daniel
Bonjour,
Merci pour la réponse.
Je viens d'essayer de cette façon, mais je n'obtiens aucun résultat dans ma
zone de texte
=RechDom("Gestionnaire";"STA_ST_1";"Code Client"="Me.Mod_Ch_CodeClient")
ou
=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]"="Me.Mod_Ch_CodeClient")

=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]"=[Formulaires]("Accueil")![Mod_Ch_CodeClient])
forms modifié automatiquement par ACCESS en formulaires

Ce que je souhaite faire, c'est un formulaire (Accueil) pour visionner les
champs d'une table Sta_st_1, mais de pouvoir sélectionner le champs
codeclient à partir d'une liste modifiable, pour obtenir directement les
renseignements. Et ça ne fonctionne pas. La base comptoir le fait, mais
modifie la table de départ. Je ne veux que consulter.
Encore merci.
Bonne journée.

"Gilbert" a écrit dans le message de news:

Bonjour

Qu'est Accueil dans ta base?
Si c'est le nom du formulaire actif, tu peux ou plutôt tu dois remplacer
accueil!Mod_Ch_CodeClient
par
Me.Mod_Ch_CodeClient
ou par
Forms("accueil")!Mod_Ch_CodeClient

--
Cordialement,

Gilbert


"daniel" a écrit dans le message de
news:u%
Bonsoir,
J'essaye désespérement qu'une zone de texte affiche le gestionnaire d'un
code client :
J'ai un formulaire dans lequel je mets une liste modifiable pour afficher
une agence:
SELECT [STA_ST_1].[Numéro de guichet] FROM STA_ST_1 GROUP BY
[STA_ST_1].[Numéro de guichet] ORDER BY [STA_ST_1].[Numéro de guichet];
(STA_ST_1 est un fichier texte lié)

une procédure évènementielle :
Private Sub Mod_Ch_Agce_AfterUpdate()
Me.Mod_Ch_CodeClient = ""
Me.Mod_Ch_CodeClient.Requery
Me.Mod_Ch_CodeClient.SetFocus
Me.Mod_Ch_CodeClient.Dropdown
End Sub

alimente une liste modifiable : Mod_Ch_CodeClient
dans laquelle je souhaite faire une sélection, et à partir de ce choix,
j'aimerais que certains champs de la table liée "STA_ST_1" s'affiche dans
une zone de texte en utilisant RechDom.

différentes tentatives (Gestionnaire est un des champs de "STA_ST_1") :
=RechDom("Gestionnaire";"STA_ST_1";"[Code
Client]=[accueil]![Mod_Ch_CodeClient]")
=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]=[accueil]![Mod_Ch_CodeClient]")
avec/sans crochets, avec/sans guillemets....

Mais ACCESS me répond :
"L'expression entrée comme paramètre de requête est à l'origine de


l'erreur
suivante : 'L'objet en contient pas d'objet d'automatisation
'accueil!Mod_Ch_CodeClient".

Par avance, merci de me dire si c'est possible,ou, où je commets


l'erreur,
voire me donner des liens avec des bases utilisant déjà RechDom, je n'en
trouve pas pour l'instant...
Je débute dans les formulaires, aussi, n'hésitez pas à détailler au


maximum.
Bonne journée.
DanielH









Avatar
Gilbert
Si Mod_Ch_CodeClient est numérique
=RechDom("Gestionnaire";"STA_ST_1";"Code Client="& Me.Mod_Ch_CodeClient)

si alphanumérique
=RechDom("Gestionnaire";"STA_ST_1";"Code Client='"& Me.Mod_Ch_CodeClient &
"'")


--
Cordialement,

Gilbert


"daniel" a écrit dans le message de
news:
Bonjour,
Merci pour la réponse.
Je viens d'essayer de cette façon, mais je n'obtiens aucun résultat dans


ma
zone de texte
=RechDom("Gestionnaire";"STA_ST_1";"Code Client"="Me.Mod_Ch_CodeClient")
ou
=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]"="Me.Mod_Ch_CodeClient")

=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]"=[Formulaires]("Accueil")![Mod_Ch_CodeClient])
forms modifié automatiquement par ACCESS en formulaires

Ce que je souhaite faire, c'est un formulaire (Accueil) pour visionner les
champs d'une table Sta_st_1, mais de pouvoir sélectionner le champs
codeclient à partir d'une liste modifiable, pour obtenir directement les
renseignements. Et ça ne fonctionne pas. La base comptoir le fait, mais
modifie la table de départ. Je ne veux que consulter.
Encore merci.
Bonne journée.

"Gilbert" a écrit dans le message de


news:

> Bonjour
>
> Qu'est Accueil dans ta base?
> Si c'est le nom du formulaire actif, tu peux ou plutôt tu dois remplacer
> accueil!Mod_Ch_CodeClient
> par
> Me.Mod_Ch_CodeClient
> ou par
> Forms("accueil")!Mod_Ch_CodeClient
>
> --
> Cordialement,
>
> Gilbert
>
>
> "daniel" a écrit dans le message de
> news:u%
>> Bonsoir,
>> J'essaye désespérement qu'une zone de texte affiche le gestionnaire


d'un
>> code client :
>> J'ai un formulaire dans lequel je mets une liste modifiable pour


afficher
>> une agence:
>> SELECT [STA_ST_1].[Numéro de guichet] FROM STA_ST_1 GROUP BY
>> [STA_ST_1].[Numéro de guichet] ORDER BY [STA_ST_1].[Numéro de guichet];
>> (STA_ST_1 est un fichier texte lié)
>>
>> une procédure évènementielle :
>> Private Sub Mod_Ch_Agce_AfterUpdate()
>> Me.Mod_Ch_CodeClient = ""
>> Me.Mod_Ch_CodeClient.Requery
>> Me.Mod_Ch_CodeClient.SetFocus
>> Me.Mod_Ch_CodeClient.Dropdown
>> End Sub
>>
>> alimente une liste modifiable : Mod_Ch_CodeClient
>> dans laquelle je souhaite faire une sélection, et à partir de ce choix,
>> j'aimerais que certains champs de la table liée "STA_ST_1" s'affiche


dans
>> une zone de texte en utilisant RechDom.
>>
>> différentes tentatives (Gestionnaire est un des champs de "STA_ST_1") :
>> =RechDom("Gestionnaire";"STA_ST_1";"[Code
>> Client]=[accueil]![Mod_Ch_CodeClient]")
>> =RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
>> Client]=[accueil]![Mod_Ch_CodeClient]")
>> avec/sans crochets, avec/sans guillemets....
>>
>> Mais ACCESS me répond :
>> "L'expression entrée comme paramètre de requête est à l'origine de
> l'erreur
>> suivante : 'L'objet en contient pas d'objet d'automatisation
>> 'accueil!Mod_Ch_CodeClient".
>>
>> Par avance, merci de me dire si c'est possible,ou, où je commets
> l'erreur,
>> voire me donner des liens avec des bases utilisant déjà RechDom, je


n'en
>> trouve pas pour l'instant...
>> Je débute dans les formulaires, aussi, n'hésitez pas à détailler au
> maximum.
>> Bonne journée.
>> DanielH
>>
>>
>>
>
>




Avatar
daniel
Re..
Merci, mais ça ne fonctionne pas non plus...
Dans la zone de texte, maintenant il y a Nom?
Pour Code client, c'est du texte composé de 3 à 4 chiffres puis : puis 1 à 6
chiffres
Je crains que ce soit dans le cheminement pour arriver à mon formulaire que
l'erreur se trouve.
Si vous connaissez une base exemple sur l'un des nombreux bons sites que je
parcoure en vain, merci du lien.
Encore merci pour vos réponses, mais je reste à l'écoute au cas où... (avec
une connexion internet très capricieuse ;-))
Daniel

"Gilbert" a écrit dans le message de news:
uEUV$
Si Mod_Ch_CodeClient est numérique
=RechDom("Gestionnaire";"STA_ST_1";"Code Client="& Me.Mod_Ch_CodeClient)

si alphanumérique
=RechDom("Gestionnaire";"STA_ST_1";"Code Client='"& Me.Mod_Ch_CodeClient &
"'")


--
Cordialement,

Gilbert


"daniel" a écrit dans le message de
news:
Bonjour,
Merci pour la réponse.
Je viens d'essayer de cette façon, mais je n'obtiens aucun résultat dans


ma
zone de texte
=RechDom("Gestionnaire";"STA_ST_1";"Code Client"="Me.Mod_Ch_CodeClient")
ou
=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]"="Me.Mod_Ch_CodeClient")

=RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
Client]"=[Formulaires]("Accueil")![Mod_Ch_CodeClient])
forms modifié automatiquement par ACCESS en formulaires

Ce que je souhaite faire, c'est un formulaire (Accueil) pour visionner
les
champs d'une table Sta_st_1, mais de pouvoir sélectionner le champs
codeclient à partir d'une liste modifiable, pour obtenir directement les
renseignements. Et ça ne fonctionne pas. La base comptoir le fait, mais
modifie la table de départ. Je ne veux que consulter.
Encore merci.
Bonne journée.

"Gilbert" a écrit dans le message de


news:

> Bonjour
>
> Qu'est Accueil dans ta base?
> Si c'est le nom du formulaire actif, tu peux ou plutôt tu dois
> remplacer
> accueil!Mod_Ch_CodeClient
> par
> Me.Mod_Ch_CodeClient
> ou par
> Forms("accueil")!Mod_Ch_CodeClient
>
> --
> Cordialement,
>
> Gilbert
>
>
> "daniel" a écrit dans le message de
> news:u%
>> Bonsoir,
>> J'essaye désespérement qu'une zone de texte affiche le gestionnaire


d'un
>> code client :
>> J'ai un formulaire dans lequel je mets une liste modifiable pour


afficher
>> une agence:
>> SELECT [STA_ST_1].[Numéro de guichet] FROM STA_ST_1 GROUP BY
>> [STA_ST_1].[Numéro de guichet] ORDER BY [STA_ST_1].[Numéro de
>> guichet];
>> (STA_ST_1 est un fichier texte lié)
>>
>> une procédure évènementielle :
>> Private Sub Mod_Ch_Agce_AfterUpdate()
>> Me.Mod_Ch_CodeClient = ""
>> Me.Mod_Ch_CodeClient.Requery
>> Me.Mod_Ch_CodeClient.SetFocus
>> Me.Mod_Ch_CodeClient.Dropdown
>> End Sub
>>
>> alimente une liste modifiable : Mod_Ch_CodeClient
>> dans laquelle je souhaite faire une sélection, et à partir de ce
>> choix,
>> j'aimerais que certains champs de la table liée "STA_ST_1" s'affiche


dans
>> une zone de texte en utilisant RechDom.
>>
>> différentes tentatives (Gestionnaire est un des champs de "STA_ST_1")
>> :
>> =RechDom("Gestionnaire";"STA_ST_1";"[Code
>> Client]=[accueil]![Mod_Ch_CodeClient]")
>> =RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
>> Client]=[accueil]![Mod_Ch_CodeClient]")
>> avec/sans crochets, avec/sans guillemets....
>>
>> Mais ACCESS me répond :
>> "L'expression entrée comme paramètre de requête est à l'origine de
> l'erreur
>> suivante : 'L'objet en contient pas d'objet d'automatisation
>> 'accueil!Mod_Ch_CodeClient".
>>
>> Par avance, merci de me dire si c'est possible,ou, où je commets
> l'erreur,
>> voire me donner des liens avec des bases utilisant déjà RechDom, je


n'en
>> trouve pas pour l'instant...
>> Je débute dans les formulaires, aussi, n'hésitez pas à détailler au
> maximum.
>> Bonne journée.
>> DanielH
>>
>>
>>
>
>








Avatar
Gilbert
Dans l'évènement Après mise à jour de ton controle Mod_Ch_CodeClient tu mets

Me.LeNomDeTonControle = DLookup("Gestionnaire";"STA_ST_1";"Code Client='"&
Me.Mod_Ch_CodeClient & "'")


--
Cordialement,

Gilbert


"daniel" a écrit dans le message de
news:%
Re..
Merci, mais ça ne fonctionne pas non plus...
Dans la zone de texte, maintenant il y a Nom?
Pour Code client, c'est du texte composé de 3 à 4 chiffres puis : puis 1 à


6
chiffres
Je crains que ce soit dans le cheminement pour arriver à mon formulaire


que
l'erreur se trouve.
Si vous connaissez une base exemple sur l'un des nombreux bons sites que


je
parcoure en vain, merci du lien.
Encore merci pour vos réponses, mais je reste à l'écoute au cas où...


(avec
une connexion internet très capricieuse ;-))
Daniel

"Gilbert" a écrit dans le message de


news:
uEUV$
> Si Mod_Ch_CodeClient est numérique
> =RechDom("Gestionnaire";"STA_ST_1";"Code Client="& Me.Mod_Ch_CodeClient)
>
> si alphanumérique
> =RechDom("Gestionnaire";"STA_ST_1";"Code Client='"& Me.Mod_Ch_CodeClient


&
> "'")
>
>
> --
> Cordialement,
>
> Gilbert
>
>
> "daniel" a écrit dans le message de
> news:
>> Bonjour,
>> Merci pour la réponse.
>> Je viens d'essayer de cette façon, mais je n'obtiens aucun résultat


dans
> ma
>> zone de texte
>> =RechDom("Gestionnaire";"STA_ST_1";"Code


Client"="Me.Mod_Ch_CodeClient")
>> ou
>> =RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
>> Client]"="Me.Mod_Ch_CodeClient")
>>
>> =RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
>> Client]"=[Formulaires]("Accueil")![Mod_Ch_CodeClient])
>> forms modifié automatiquement par ACCESS en formulaires
>>
>> Ce que je souhaite faire, c'est un formulaire (Accueil) pour visionner
>> les
>> champs d'une table Sta_st_1, mais de pouvoir sélectionner le champs
>> codeclient à partir d'une liste modifiable, pour obtenir directement


les
>> renseignements. Et ça ne fonctionne pas. La base comptoir le fait, mais
>> modifie la table de départ. Je ne veux que consulter.
>> Encore merci.
>> Bonne journée.
>>
>> "Gilbert" a écrit dans le message de
> news:
>>
>> > Bonjour
>> >
>> > Qu'est Accueil dans ta base?
>> > Si c'est le nom du formulaire actif, tu peux ou plutôt tu dois
>> > remplacer
>> > accueil!Mod_Ch_CodeClient
>> > par
>> > Me.Mod_Ch_CodeClient
>> > ou par
>> > Forms("accueil")!Mod_Ch_CodeClient
>> >
>> > --
>> > Cordialement,
>> >
>> > Gilbert
>> >
>> >
>> > "daniel" a écrit dans le message de
>> > news:u%
>> >> Bonsoir,
>> >> J'essaye désespérement qu'une zone de texte affiche le gestionnaire
> d'un
>> >> code client :
>> >> J'ai un formulaire dans lequel je mets une liste modifiable pour
> afficher
>> >> une agence:
>> >> SELECT [STA_ST_1].[Numéro de guichet] FROM STA_ST_1 GROUP BY
>> >> [STA_ST_1].[Numéro de guichet] ORDER BY [STA_ST_1].[Numéro de
>> >> guichet];
>> >> (STA_ST_1 est un fichier texte lié)
>> >>
>> >> une procédure évènementielle :
>> >> Private Sub Mod_Ch_Agce_AfterUpdate()
>> >> Me.Mod_Ch_CodeClient = ""
>> >> Me.Mod_Ch_CodeClient.Requery
>> >> Me.Mod_Ch_CodeClient.SetFocus
>> >> Me.Mod_Ch_CodeClient.Dropdown
>> >> End Sub
>> >>
>> >> alimente une liste modifiable : Mod_Ch_CodeClient
>> >> dans laquelle je souhaite faire une sélection, et à partir de ce
>> >> choix,
>> >> j'aimerais que certains champs de la table liée "STA_ST_1" s'affiche
> dans
>> >> une zone de texte en utilisant RechDom.
>> >>
>> >> différentes tentatives (Gestionnaire est un des champs de


"STA_ST_1")
>> >> :
>> >> =RechDom("Gestionnaire";"STA_ST_1";"[Code
>> >> Client]=[accueil]![Mod_Ch_CodeClient]")
>> >> =RechDom("[Gestionnaire]";"[STA_ST_1]";"[Code
>> >> Client]=[accueil]![Mod_Ch_CodeClient]")
>> >> avec/sans crochets, avec/sans guillemets....
>> >>
>> >> Mais ACCESS me répond :
>> >> "L'expression entrée comme paramètre de requête est à l'origine de
>> > l'erreur
>> >> suivante : 'L'objet en contient pas d'objet d'automatisation
>> >> 'accueil!Mod_Ch_CodeClient".
>> >>
>> >> Par avance, merci de me dire si c'est possible,ou, où je commets
>> > l'erreur,
>> >> voire me donner des liens avec des bases utilisant déjà RechDom, je
> n'en
>> >> trouve pas pour l'instant...
>> >> Je débute dans les formulaires, aussi, n'hésitez pas à détailler au
>> > maximum.
>> >> Bonne journée.
>> >> DanielH
>> >>
>> >>
>> >>
>> >
>> >
>>
>>
>
>




Avatar
Gloops
daniel a écrit :
Re..
Merci, mais ça ne fonctionne pas non plus...




Bonjour,

Si on tourne en rond avec une RechDom (=DLookup), ça peut aider de créer
un contrôle séparé (zone de texte) avec le critère. On l'appellera par
exemple txtCritere, et on l'appellera depuis l'emplacement où doit
s'afficher le résultat. Ici on pourrait probablement s'en passer, mais
cette technique sera bienvenue avec des critères portant sur deux ou
trois champs avec des combinaisons sophistiquées.

txtCritere :
="[Code Client]="& Me.Mod_Ch_CodeClient

(et ajouter les séparateurs comme dit Gilbert, si c'est du texte -sans
oublier de les doubler au besoin dans le code client, avec si je me
rappelle bien Replace)

txtResultat :
=RechDom("Gestionnaire";"STA_ST_1";txtCritere)

étant entendu que STA_ST_1 est le nom de la table ou de la requête où
est effectuée la recherche, et que Gestionnaire est un champ de cette
table ou de cette requête.

Généralement on conseille de ne pas mettre d'espaces dans les noms de
tables, de requêtes, de champs. Si on ne suit pas cette règle, il
convient d'encadrer ces noms, généralement entre crochets droits : c'est
ce que j'ai fait ci-dessus dans le code de txtCritere, pour [Code Client].

Une fois que le résultat correct est obtenu, on pourra rendre txtCritere
non visible afin de ne pas perturber l'utilisateur.

Pour le moment, si ça coince encore, nous dire ce qu'affiche txtCritere,
et ce qu'inspire une comparaison avec le contenu de STA_ST_1, voire ce
que donne un test dans le générateur de requêtes avec ce critère.

Bien sûr, j'insiste sur le fait que le nom txtCritere n'est pas entre
guillemets dans le code de txtResultat, sinon c'est "txtCritere" qui
sera utilisé comme critère de recherche, et non "[Code Client]=3" (si on
a 3 dans Mod_Ch_CodeClient) et donc SQL ne saura pas quoi faire avec. En
revanche, pour "Gestionnaire" et "STA_ST_1", on laisse les guillemets
puisque ce sont bien les noms du champ et de la requête, et non de
variables qui les contiennent.
Avatar
daniel
Bonjour,
Désolé pour les délais de réponse, mais mon micro, ainsi que ma connexion
internet me causent des soucis.
Je regarde ce que j'arrive avec vos conseils et je reviens vous dire où j'en
suis, d'ici peu de temps ;-(, peut-être.
Enfin, merci pour votre disponibilité et bonnes fêtes de noël à tous.
Daniel.


"Gloops" a écrit dans le message de news:

daniel a écrit :
Re..
Merci, mais ça ne fonctionne pas non plus...




Bonjour,

Si on tourne en rond avec une RechDom (=DLookup), ça peut aider de créer
un contrôle séparé (zone de texte) avec le critère. On l'appellera par
exemple txtCritere, et on l'appellera depuis l'emplacement où doit
s'afficher le résultat. Ici on pourrait probablement s'en passer, mais
cette technique sera bienvenue avec des critères portant sur deux ou trois
champs avec des combinaisons sophistiquées.

txtCritere :
="[Code Client]="& Me.Mod_Ch_CodeClient

(et ajouter les séparateurs comme dit Gilbert, si c'est du texte -sans
oublier de les doubler au besoin dans le code client, avec si je me
rappelle bien Replace)

txtResultat :
=RechDom("Gestionnaire";"STA_ST_1";txtCritere)

étant entendu que STA_ST_1 est le nom de la table ou de la requête où est
effectuée la recherche, et que Gestionnaire est un champ de cette table ou
de cette requête.

Généralement on conseille de ne pas mettre d'espaces dans les noms de
tables, de requêtes, de champs. Si on ne suit pas cette règle, il convient
d'encadrer ces noms, généralement entre crochets droits : c'est ce que
j'ai fait ci-dessus dans le code de txtCritere, pour [Code Client].

Une fois que le résultat correct est obtenu, on pourra rendre txtCritere
non visible afin de ne pas perturber l'utilisateur.

Pour le moment, si ça coince encore, nous dire ce qu'affiche txtCritere,
et ce qu'inspire une comparaison avec le contenu de STA_ST_1, voire ce que
donne un test dans le générateur de requêtes avec ce critère.

Bien sûr, j'insiste sur le fait que le nom txtCritere n'est pas entre
guillemets dans le code de txtResultat, sinon c'est "txtCritere" qui sera
utilisé comme critère de recherche, et non "[Code Client]=3" (si on a 3
dans Mod_Ch_CodeClient) et donc SQL ne saura pas quoi faire avec. En
revanche, pour "Gestionnaire" et "STA_ST_1", on laisse les guillemets
puisque ce sont bien les noms du champ et de la requête, et non de
variables qui les contiennent.