OVH Cloud OVH Cloud

SQL LIKE avec référence à un formulaire, ca marche pas

10 réponses
Avatar
Cyril
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril

10 réponses

Avatar
Gafish
Bonjour aussi

En imagineant que ton numéro est en texte car le like est un opérateur sur
les chaines de caractères (mais bon tu as mis entre ' donc j'imagine que
c'est le cas), il faut savoir ce que tu veux chercher précisement à partir
de ce numéro : tout ce qui commence par ce numéro, qui finit par ce numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais faudrait faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en plus ca
ne marche pas ce n'est pas trop explicite, tu as un message d'erreur, ca te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril




Avatar
Cyril
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un problème.

La table histo est une table attachée et le numero est d'attribut TEXTE. Par
contre le controle [Numero] du formulaire [F_reparation_ajouter] est en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée depuis une
autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un opérateur sur
les chaines de caractères (mais bon tu as mis entre ' donc j'imagine que
c'est le cas), il faut savoir ce que tu veux chercher précisement à partir
de ce numéro : tout ce qui commence par ce numéro, qui finit par ce
numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en plus ca
ne marche pas ce n'est pas trop explicite, tu as un message d'erreur, ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril








Avatar
Gafish
Ca devrait passer.
Essaie de mettre la chose suivante dans ta requête :

WHERE histo.sonde LIKE "*" & Forms!F_reparation_ajouter!Numero & "*"

Arnaud

"Cyril" a écrit dans le message news:
#
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un
problème.


La table histo est une table attachée et le numero est d'attribut TEXTE.
Par

contre le controle [Numero] du formulaire [F_reparation_ajouter] est en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée depuis
une

autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un opérateur
sur


les chaines de caractères (mais bon tu as mis entre ' donc j'imagine que
c'est le cas), il faut savoir ce que tu veux chercher précisement à
partir


de ce numéro : tout ce qui commence par ce numéro, qui finit par ce
numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en plus
ca


ne marche pas ce n'est pas trop explicite, tu as un message d'erreur, ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril












Avatar
Cyril
J'ai une erreur "incompatibilité de type"....

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

Ca devrait passer.
Essaie de mettre la chose suivante dans ta requête :

WHERE histo.sonde LIKE "*" & Forms!F_reparation_ajouter!Numero & "*"

Arnaud

"Cyril" a écrit dans le message news:
#
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un
problème.


La table histo est une table attachée et le numero est d'attribut TEXTE.
Par

contre le controle [Numero] du formulaire [F_reparation_ajouter] est en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée depuis
une

autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un opérateur
sur


les chaines de caractères (mais bon tu as mis entre ' donc j'imagine
que
c'est le cas), il faut savoir ce que tu veux chercher précisement à
partir


de ce numéro : tout ce qui commence par ce numéro, qui finit par ce
numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en plus
ca


ne marche pas ce n'est pas trop explicite, tu as un message d'erreur,
ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril
















Avatar
Gafish
c'est bizarre parce que j'ai testé chez moi avec le même cas de figure
(champ d'un form basé sur un numéroauto, et requête avec un like sur un
champ d'une table en type texte) et ca fonctionne très bien.
Peux tu mettre le code complet de ta requête ?

"Cyril" a écrit dans le message news:
#
J'ai une erreur "incompatibilité de type"....

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

Ca devrait passer.
Essaie de mettre la chose suivante dans ta requête :

WHERE histo.sonde LIKE "*" & Forms!F_reparation_ajouter!Numero & "*"

Arnaud

"Cyril" a écrit dans le message news:
#
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un
problème.


La table histo est une table attachée et le numero est d'attribut
TEXTE.



Par
contre le controle [Numero] du formulaire [F_reparation_ajouter] est en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée
depuis



une
autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un
opérateur




sur
les chaines de caractères (mais bon tu as mis entre ' donc j'imagine
que
c'est le cas), il faut savoir ce que tu veux chercher précisement à
partir


de ce numéro : tout ce qui commence par ce numéro, qui finit par ce
numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en
plus




ca
ne marche pas ce n'est pas trop explicite, tu as un message d'erreur,
ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril




















Avatar
Cyril
Me.ancien_control.RowSource = "SELECT date_etal, no_etalon FROM histo WHERE
histo.sonde LIKE " * " & Forms!F_reparation_ajouter!Numero & " * " "

Le numero de [F_reparation_ajouter!Numero ] est la clef primaire de ma
table, est-ce celà qui pose problème?


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

c'est bizarre parce que j'ai testé chez moi avec le même cas de figure
(champ d'un form basé sur un numéroauto, et requête avec un like sur un
champ d'une table en type texte) et ca fonctionne très bien.
Peux tu mettre le code complet de ta requête ?

"Cyril" a écrit dans le message news:
#
J'ai une erreur "incompatibilité de type"....

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

Ca devrait passer.
Essaie de mettre la chose suivante dans ta requête :

WHERE histo.sonde LIKE "*" & Forms!F_reparation_ajouter!Numero & "*"

Arnaud

"Cyril" a écrit dans le message news:
#
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un
problème.


La table histo est une table attachée et le numero est d'attribut
TEXTE.



Par
contre le controle [Numero] du formulaire [F_reparation_ajouter] est
en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée
depuis



une
autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un
opérateur




sur
les chaines de caractères (mais bon tu as mis entre ' donc j'imagine
que
c'est le cas), il faut savoir ce que tu veux chercher précisement à
partir


de ce numéro : tout ce qui commence par ce numéro, qui finit par ce
numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais
faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en
plus




ca
ne marche pas ce n'est pas trop explicite, tu as un message
d'erreur,
ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril
























Avatar
Gafish
ok c'est une requête en vba alors, ca change la donne.
ancien_control ici c'est quoi ? une zone de texte ? Qu'est ce que tu veux
faire exactement, en fait je ne sais toujours pas.
Je te conseille de créer ta requête en "dur" dans Access et de la mettre en
source de ton form, puis de mettre les champs en source de tes zones de
texte.


"Cyril" a écrit dans le message news:
O5deL#
Me.ancien_control.RowSource = "SELECT date_etal, no_etalon FROM histo
WHERE

histo.sonde LIKE " * " & Forms!F_reparation_ajouter!Numero & " * " "

Le numero de [F_reparation_ajouter!Numero ] est la clef primaire de ma
table, est-ce celà qui pose problème?


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

c'est bizarre parce que j'ai testé chez moi avec le même cas de figure
(champ d'un form basé sur un numéroauto, et requête avec un like sur un
champ d'une table en type texte) et ca fonctionne très bien.
Peux tu mettre le code complet de ta requête ?

"Cyril" a écrit dans le message news:
#
J'ai une erreur "incompatibilité de type"....

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

Ca devrait passer.
Essaie de mettre la chose suivante dans ta requête :

WHERE histo.sonde LIKE "*" & Forms!F_reparation_ajouter!Numero & "*"

Arnaud

"Cyril" a écrit dans le message news:
#
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un
problème.


La table histo est une table attachée et le numero est d'attribut
TEXTE.



Par
contre le controle [Numero] du formulaire [F_reparation_ajouter] est
en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée
depuis



une
autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un
opérateur




sur
les chaines de caractères (mais bon tu as mis entre ' donc
j'imagine






que
c'est le cas), il faut savoir ce que tu veux chercher précisement
à






partir
de ce numéro : tout ce qui commence par ce numéro, qui finit par
ce






numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais
faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie, en
plus




ca
ne marche pas ce n'est pas trop explicite, tu as un message
d'erreur,
ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril




























Avatar
Eric
Bonjour,

en mettant :
Me.ancien_control.RowSource = "SELECT date_etal, no_etalon FROM histo
WHERE histo.sonde LIKE *" & Forms!F_reparation_ajouter!Numero & "*"

ca marche ?

A+
Eric


"Cyril" écrivait
news:O5deL#:

Me.ancien_control.RowSource = "SELECT date_etal, no_etalon FROM histo
WHERE histo.sonde LIKE " * " & Forms!F_reparation_ajouter!Numero & " *
" "

Le numero de [F_reparation_ajouter!Numero ] est la clef primaire de ma
table, est-ce celà qui pose problème?




Avatar
Cyril
Me.ancien_control est une listbox et je voudrais quelle contiennent les date
des ancien control de mon matériel.

Eric: Ca ne marche pas!
"Gafish" a écrit dans le message de news:
%
ok c'est une requête en vba alors, ca change la donne.
ancien_control ici c'est quoi ? une zone de texte ? Qu'est ce que tu veux
faire exactement, en fait je ne sais toujours pas.
Je te conseille de créer ta requête en "dur" dans Access et de la mettre
en
source de ton form, puis de mettre les champs en source de tes zones de
texte.


"Cyril" a écrit dans le message news:
O5deL#
Me.ancien_control.RowSource = "SELECT date_etal, no_etalon FROM histo
WHERE

histo.sonde LIKE " * " & Forms!F_reparation_ajouter!Numero & " * " "

Le numero de [F_reparation_ajouter!Numero ] est la clef primaire de ma
table, est-ce celà qui pose problème?


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

c'est bizarre parce que j'ai testé chez moi avec le même cas de figure
(champ d'un form basé sur un numéroauto, et requête avec un like sur un
champ d'une table en type texte) et ca fonctionne très bien.
Peux tu mettre le code complet de ta requête ?

"Cyril" a écrit dans le message news:
#
J'ai une erreur "incompatibilité de type"....

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

Ca devrait passer.
Essaie de mettre la chose suivante dans ta requête :

WHERE histo.sonde LIKE "*" & Forms!F_reparation_ajouter!Numero & "*"

Arnaud

"Cyril" a écrit dans le message news:
#
Désolé de ne pas avoir été plus précis, mais ta réponse me pose un
problème.


La table histo est une table attachée et le numero est d'attribut
TEXTE.



Par
contre le controle [Numero] du formulaire [F_reparation_ajouter]
est
en
format numérique (plus précisément en numéroauto)....
Est-ce qu'il y a une solution?

Je ne peut pas modifier la table histo qui est une table importée
depuis



une
autre application.

Merci

Cyril

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

Bonjour aussi

En imagineant que ton numéro est en texte car le like est un
opérateur




sur
les chaines de caractères (mais bon tu as mis entre ' donc
j'imagine






que
c'est le cas), il faut savoir ce que tu veux chercher précisement
à






partir
de ce numéro : tout ce qui commence par ce numéro, qui finit par
ce






numéro,
où on trouve ce numéro... ? On veut bien te le corriger mais
faudrait
faire
au moins l'effort de ton côté de dire ce que tu veux en sortie,
en
plus




ca
ne marche pas ce n'est pas trop explicite, tu as un message
d'erreur,
ca
te
retourne quelque chose que tu n'attends pas ?

Arnaud

"Cyril" a écrit dans le message news:
#
Est-ce que qq peux me corriger le code ci-dessous, il marche pas

WHERE histo.sonde LIKE 'Forms!F_reparation_ajouter!Numero'


Merci de votre aide

Cyril
































Avatar
Marcel
Attention si ton champs est numérique, alors le like ne marchera pas, pour
contourner ce petit problème tu peux utilisateur une requete pour ton champ
qui "transformera" ton numérique en texte en faisant cela simplement:
monNouveauChamp:" "&monchampnumerique

de cette manière monnouveauchamp est devenu une chaine alphanumérique
sur lequel tes "LIKE" fonctionneront sans problèmes