Zone de texte avec requête

Le
Animatrix
Salut à tous !!

J'aimerais pouvoir insérer comme valeur dans une zone de texte le résultat
d'une requête (qui ne me retourne qu'un résultat).

Seulement, le résultat obtenu est #Nom

Comment faire ?


Sinon, j'ai aussi pensé à créer une zone de liste, mais je n'arrive pas à
sélectionner le 1er enregistrement.

Toutefois, je préférerais utiliser qu'une seule zone de texte.

Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
3stone
Le #6656041
Salut,

"Animatrix"
| J'aimerais pouvoir insérer comme valeur dans une zone de texte le résultat
| d'une requête (qui ne me retourne qu'un résultat).
|
| Seulement, le résultat obtenu est #Nom


C'est normal... une requête ne peut effectivement pas être la source d'une
zone de texte - cela est destiné à recevoir la valeur d'un champ !

Mais, si la requête ne ramène qu'une valeur, on peut utiliser une
fonction de domaine... et on mettra comme source du TextBox :

= Dlookup("NomDuChamp" ; "NomDeLaRequête")

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Animatrix
Le #6657551
Merci.

Par contre, comment l'écrire en VB ?

Private Sub Numcl_BeforeUpdate(Cancel As Integer)

=Dlookup(Numcl,Numclient)

End Sub

N'est pas bon.
J'aimerais simplement que l'événement se fasse au chargement du formulaire.
Comment faire ?



Salut,

"Animatrix"
| J'aimerais pouvoir insérer comme valeur dans une zone de texte le résultat
| d'une requête (qui ne me retourne qu'un résultat).
|
| Seulement, le résultat obtenu est #Nom


C'est normal... une requête ne peut effectivement pas être la source d'une
zone de texte - cela est destiné à recevoir la valeur d'un champ !

Mais, si la requête ne ramène qu'une valeur, on peut utiliser une
fonction de domaine... et on mettra comme source du TextBox :

= Dlookup("NomDuChamp" ; "NomDeLaRequête")

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)




RaphK34
Le #6658431
Salut, sur l'évènement de ton choix, par exemple sur entree dans Numcl:
Me.Numcl=Dlookup("NumCl","NumClient")
si NumCl est le champs dans la table et NumClient la table.
Pense à regarder l'aide sur Dlookup qui est bien renseignée.
Tu peux tester aussi dnas le fenetre d'execution de la fenetre VBA via
l'instruction:
Debug.Print Dlookup("NumCl","NumClient")

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" news:
Merci.

Par contre, comment l'écrire en VB ?

Private Sub Numcl_BeforeUpdate(Cancel As Integer)

=Dlookup(Numcl,Numclient)

End Sub

N'est pas bon.
J'aimerais simplement que l'événement se fasse au chargement du
formulaire.
Comment faire ?



Salut,

"Animatrix"
| J'aimerais pouvoir insérer comme valeur dans une zone de texte le
résultat
| d'une requête (qui ne me retourne qu'un résultat).
|
| Seulement, le résultat obtenu est #Nom


C'est normal... une requête ne peut effectivement pas être la source
d'une
zone de texte - cela est destiné à recevoir la valeur d'un champ !

Mais, si la requête ne ramène qu'une valeur, on peut utiliser une
fonction de domaine... et on mettra comme source du TextBox :

= Dlookup("NomDuChamp" ; "NomDeLaRequête")

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)







Animatrix
Le #6658401
Justement j'ai un problème avec l'événement.
J'aimerais dire lors du chargement du formulaire.

Private Sub Numcl_BeforeUpdate(Cancel As Integer)

Me.Numcl = DLookup("NumCl", "NumClient")

End Sub

Car cela ne renvoi rien.

Pour info, ma requête :
SELECT N°
FROM Client
WHERE Num_secu=Formulaires!Ajouter_client!Num_secu And
Nom=Formulaires!Ajouter_client!Nom;
RaphK34
Le #6658931
Re,
Là tu n'es pas sur le chargement de ton form, mais sur le "Avant Mise à
Jour" de ton contrôle !

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" news:
Justement j'ai un problème avec l'événement.
J'aimerais dire lors du chargement du formulaire.

Private Sub Numcl_BeforeUpdate(Cancel As Integer)

Me.Numcl = DLookup("NumCl", "NumClient")

End Sub

Car cela ne renvoi rien.

Pour info, ma requête :
SELECT N°
FROM Client
WHERE Num_secu=Formulaires!Ajouter_client!Num_secu And
Nom=Formulaires!Ajouter_client!Nom;



Animatrix
Le #6658921
Et justement je ne vois pas comment faire, c'est pour ca que je demande.
Par contre, dans la fenêtre d'éxecution, si je tapes Debug.Print
Dlookup("NumCl","NumClient")

J'obtiens une erreur d'exécution '2471'

L'expression entrée comme paramètre de requête est à l'origine de l'erreur
suivante : "Numcl"

:(


Re,
Là tu n'es pas sur le chargement de ton form, mais sur le "Avant Mise à
Jour" de ton contrôle !

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" news:
Justement j'ai un problème avec l'événement.
J'aimerais dire lors du chargement du formulaire.

Private Sub Numcl_BeforeUpdate(Cancel As Integer)

Me.Numcl = DLookup("NumCl", "NumClient")

End Sub

Car cela ne renvoi rien.

Pour info, ma requête :
SELECT N°
FROM Client
WHERE Num_secu=Formulaires!Ajouter_client!Num_secu And
Nom=Formulaires!Ajouter_client!Nom;








RaphK34
Le #6658911
Re,
comment s'appelle la table ou la requête dans laquelle se trouve la valeur
et comment s'appel le champs de la table/Requête ?
Et essaye de remplacer
Numcl_BeforeUpdate(Cancel As Integer)
par:
Form_Load()

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" news:
Et justement je ne vois pas comment faire, c'est pour ca que je demande.
Par contre, dans la fenêtre d'éxecution, si je tapes Debug.Print
Dlookup("NumCl","NumClient")

J'obtiens une erreur d'exécution '2471'

L'expression entrée comme paramètre de requête est à l'origine de l'erreur
suivante : "Numcl"

:(


Re,
Là tu n'es pas sur le chargement de ton form, mais sur le "Avant Mise à
Jour" de ton contrôle !

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" de
news:
Justement j'ai un problème avec l'événement.
J'aimerais dire lors du chargement du formulaire.

Private Sub Numcl_BeforeUpdate(Cancel As Integer)

Me.Numcl = DLookup("NumCl", "NumClient")

End Sub

Car cela ne renvoi rien.

Pour info, ma requête :
SELECT N°
FROM Client
WHERE Num_secu=Formulaires!Ajouter_client!Num_secu And
Nom=Formulaires!Ajouter_client!Nom;










Animatrix
Le #6658901
Nom de la requête : Numclient
Le champs de la requête N°
La zone de texte Numcl


Re,
comment s'appelle la table ou la requête dans laquelle se trouve la valeur
et comment s'appel le champs de la table/Requête ?
Et essaye de remplacer
Numcl_BeforeUpdate(Cancel As Integer)
par:
Form_Load()



RaphK34
Le #6658891
Re,
As tu lu l'aide de Dlookup ?
la bonne syntaxe est:
Me.NumClient = Dlookup("N°","NumClient")

Il vaut mieux éviter les caractères spéciaux pour tes appélations, ça évite
les erreurs potentielles ...

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" news:
Nom de la requête : Numclient
Le champs de la requête N°
La zone de texte Numcl


Re,
comment s'appelle la table ou la requête dans laquelle se trouve la
valeur
et comment s'appel le champs de la table/Requête ?
Et essaye de remplacer
Numcl_BeforeUpdate(Cancel As Integer)
par:
Form_Load()






Pierre CFI
Le #6659951
bonjour
oui, mais si c'est directement la source d'un controle
il faut un point virgule

--
Pierre CFI

*************************************************
"RaphK34"
Re,
As tu lu l'aide de Dlookup ?
la bonne syntaxe est:
Me.NumClient = Dlookup("N°","NumClient")

Il vaut mieux éviter les caractères spéciaux pour tes appélations, ça
évite les erreurs potentielles ...

--
@+ Raph.

--------------------------------------------
Merci de répondre sur le NG
Toutes remarques bienvenues !
--------------------------------------------
"Animatrix" de news:
Nom de la requête : Numclient
Le champs de la requête N°
La zone de texte Numcl


Re,
comment s'appelle la table ou la requête dans laquelle se trouve la
valeur
et comment s'appel le champs de la table/Requête ?
Et essaye de remplacer
Numcl_BeforeUpdate(Cancel As Integer)
par:
Form_Load()










Publicité
Poster une réponse
Anonyme