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
?Lo»Paris?
Bonjour La Mouette,
Désolé mais on ne peux pas sauvegarder la valeur d'un paramètre dans une requête.
Mais voici une petite solution (parmi bien d'autres)
Tu doit dupliquer ta requête, supprimer le paramètre, appliquer un critère sur le champ en lui renseignant la valeur =%1 (ou la valeur de comparaison que tu veux) le %1 servira de repère pour modifier le critère de la requête et enregistrer celle-ci, le fonctionnement est expliquer dans le code ci-dessous
**************************************** Public Sub fff()
'// Par exemple ta requête contient les instructions SQL suivantes : '// SELECT MaTable.* FROM MaTable WHERE (((MaTable.ID)="%1")) '// Le but et de remplacer le %1 par la valeur souhaiter :
Dim qry As DAO.QueryDef Const C_rep As String = """%1""" '// double "" si valeur numérique sinon supprime les. Dim sSql As String Dim sCrit As String
'// Requête modèle on extrait les commandes SQL de celle-ci, '// mais on ne la modifie pas (le repère "%1" reste). Set qry = CodeDb.QueryDefs("RQ1tmp") sSql = qry.SQL qry.Close
'// On ouvre la requête à modifier. Set qry = CodeDb.QueryDefs("RQ1")
'// On remplace le caractère repère par son critère. sCrit = Trim(Me!SousFormulaire!idCheque) sSql = Replace(sSql, C_rep, sCrit, , , vbBinaryCompare) qry.SQL = sSql Debug.Print qry.SQL
'// On sauvegarde la requête. qry.Close Set qry = Nothing
End Sub *********************************************
A toi de voir si cela convient pour ce que tu as à faire.
°Laurent°
"La Mouette" a écrit dans le message de news:
Bonjour,
j'ai une query qui prend en parametre une valeur: [id]. Dans le code VB, a un moment je fais ceci afin d'attribuer une valeur à [id]:
Dim qry As DAO.QueryDef Dim db As DAO.Database
Set db = CurrentDb Set qry = db.QueryDefs("maRequete") qry.Parameters("id") = Me!SousFormulaire!idCheque
'ICI JE VOUDRAIS SAUVER LA QUERY (SAUVER LA NOUVELLE VALEUR DE ID DANS LA REQUETE)
qry.Close
Et je ne veux pas attribuer la valeur de [id] directement dans la requete car c'est une requete que j'utilise a plusieur endroit different.
Merci encore!
Bonjour La Mouette,
Désolé mais on ne peux pas sauvegarder la valeur d'un paramètre dans une
requête.
Mais voici une petite solution (parmi bien d'autres)
Tu doit dupliquer ta requête, supprimer le paramètre, appliquer un critère
sur le champ en lui renseignant la valeur =%1 (ou la valeur de comparaison
que tu veux) le %1 servira de repère pour modifier le critère de la requête
et enregistrer celle-ci, le fonctionnement est expliquer dans le code
ci-dessous
****************************************
Public Sub fff()
'// Par exemple ta requête contient les instructions SQL suivantes :
'// SELECT MaTable.* FROM MaTable WHERE (((MaTable.ID)="%1"))
'// Le but et de remplacer le %1 par la valeur souhaiter :
Dim qry As DAO.QueryDef
Const C_rep As String = """%1""" '// double "" si valeur numérique sinon
supprime les.
Dim sSql As String
Dim sCrit As String
'// Requête modèle on extrait les commandes SQL de celle-ci,
'// mais on ne la modifie pas (le repère "%1" reste).
Set qry = CodeDb.QueryDefs("RQ1tmp")
sSql = qry.SQL
qry.Close
'// On ouvre la requête à modifier.
Set qry = CodeDb.QueryDefs("RQ1")
'// On remplace le caractère repère par son critère.
sCrit = Trim(Me!SousFormulaire!idCheque)
sSql = Replace(sSql, C_rep, sCrit, , , vbBinaryCompare)
qry.SQL = sSql
Debug.Print qry.SQL
'// On sauvegarde la requête.
qry.Close
Set qry = Nothing
End Sub
*********************************************
A toi de voir si cela convient pour ce que tu as à faire.
°Laurent°
"La Mouette" <LaMouette@discussions.microsoft.com> a écrit dans le message
de news:474E5984-2154-44B6-A792-9C231E67F4BE@microsoft.com...
Bonjour,
j'ai une query qui prend en parametre une valeur: [id]. Dans le code VB, a
un moment je fais ceci afin d'attribuer une valeur à [id]:
Dim qry As DAO.QueryDef
Dim db As DAO.Database
Set db = CurrentDb
Set qry = db.QueryDefs("maRequete")
qry.Parameters("id") = Me!SousFormulaire!idCheque
'ICI JE VOUDRAIS SAUVER LA QUERY (SAUVER LA NOUVELLE VALEUR DE ID DANS LA
REQUETE)
qry.Close
Et je ne veux pas attribuer la valeur de [id] directement dans la requete
car c'est une requete que j'utilise a plusieur endroit different.
Désolé mais on ne peux pas sauvegarder la valeur d'un paramètre dans une requête.
Mais voici une petite solution (parmi bien d'autres)
Tu doit dupliquer ta requête, supprimer le paramètre, appliquer un critère sur le champ en lui renseignant la valeur =%1 (ou la valeur de comparaison que tu veux) le %1 servira de repère pour modifier le critère de la requête et enregistrer celle-ci, le fonctionnement est expliquer dans le code ci-dessous
**************************************** Public Sub fff()
'// Par exemple ta requête contient les instructions SQL suivantes : '// SELECT MaTable.* FROM MaTable WHERE (((MaTable.ID)="%1")) '// Le but et de remplacer le %1 par la valeur souhaiter :
Dim qry As DAO.QueryDef Const C_rep As String = """%1""" '// double "" si valeur numérique sinon supprime les. Dim sSql As String Dim sCrit As String
'// Requête modèle on extrait les commandes SQL de celle-ci, '// mais on ne la modifie pas (le repère "%1" reste). Set qry = CodeDb.QueryDefs("RQ1tmp") sSql = qry.SQL qry.Close
'// On ouvre la requête à modifier. Set qry = CodeDb.QueryDefs("RQ1")
'// On remplace le caractère repère par son critère. sCrit = Trim(Me!SousFormulaire!idCheque) sSql = Replace(sSql, C_rep, sCrit, , , vbBinaryCompare) qry.SQL = sSql Debug.Print qry.SQL
'// On sauvegarde la requête. qry.Close Set qry = Nothing
End Sub *********************************************
A toi de voir si cela convient pour ce que tu as à faire.
°Laurent°
"La Mouette" a écrit dans le message de news:
Bonjour,
j'ai une query qui prend en parametre une valeur: [id]. Dans le code VB, a un moment je fais ceci afin d'attribuer une valeur à [id]:
Dim qry As DAO.QueryDef Dim db As DAO.Database
Set db = CurrentDb Set qry = db.QueryDefs("maRequete") qry.Parameters("id") = Me!SousFormulaire!idCheque
'ICI JE VOUDRAIS SAUVER LA QUERY (SAUVER LA NOUVELLE VALEUR DE ID DANS LA REQUETE)
qry.Close
Et je ne veux pas attribuer la valeur de [id] directement dans la requete car c'est une requete que j'utilise a plusieur endroit different.
Merci encore!
Maxence HUBICHE [MVP Access]
Sinon, une solution encore plus simple ... Tu crées une table. Tu t'assures qu'elle ne contienne qu'une seule ligne : la valeur de ton paramètre. Tu fais ta requête, mais au lieu d'utiliser un paramètre, tu utilise le champ de la table (que tu auras préalablement ajoutée à la requête) Et ton [ID], il ne te reste plus qu'à l'inscrire dans la table :)
-- Maxence HUBICHE Formateur et Developpeur Indépendant Microsoft MVP Office Systems - Access Rédacteur & Développeur sur http://www.developpez.com Découvrez le forum Access de Developpez.com ici : http://www.developpez.net/forums/viewforum.php?f8 "La Mouette" a écrit dans le message de news:
Bonjour,
j'ai une query qui prend en parametre une valeur: [id]. Dans le code VB, a un moment je fais ceci afin d'attribuer une valeur à [id]:
Dim qry As DAO.QueryDef Dim db As DAO.Database
Set db = CurrentDb Set qry = db.QueryDefs("maRequete") qry.Parameters("id") = Me!SousFormulaire!idCheque
'ICI JE VOUDRAIS SAUVER LA QUERY (SAUVER LA NOUVELLE VALEUR DE ID DANS LA REQUETE)
qry.Close
Et je ne veux pas attribuer la valeur de [id] directement dans la requete car c'est une requete que j'utilise a plusieur endroit different.
Merci encore!
Sinon, une solution encore plus simple ...
Tu crées une table.
Tu t'assures qu'elle ne contienne qu'une seule ligne : la valeur de ton
paramètre.
Tu fais ta requête, mais au lieu d'utiliser un paramètre, tu utilise le
champ de la table (que tu auras préalablement ajoutée à la requête)
Et ton [ID], il ne te reste plus qu'à l'inscrire dans la table :)
--
Maxence HUBICHE
Formateur et Developpeur Indépendant
Microsoft MVP Office Systems - Access
Rédacteur & Développeur sur http://www.developpez.com
Découvrez le forum Access de Developpez.com ici :
http://www.developpez.net/forums/viewforum.php?f8
"La Mouette" <LaMouette@discussions.microsoft.com> a écrit dans le message
de news:474E5984-2154-44B6-A792-9C231E67F4BE@microsoft.com...
Bonjour,
j'ai une query qui prend en parametre une valeur: [id]. Dans le code VB, a
un moment je fais ceci afin d'attribuer une valeur à [id]:
Dim qry As DAO.QueryDef
Dim db As DAO.Database
Set db = CurrentDb
Set qry = db.QueryDefs("maRequete")
qry.Parameters("id") = Me!SousFormulaire!idCheque
'ICI JE VOUDRAIS SAUVER LA QUERY (SAUVER LA NOUVELLE VALEUR DE ID DANS LA
REQUETE)
qry.Close
Et je ne veux pas attribuer la valeur de [id] directement dans la requete
car c'est une requete que j'utilise a plusieur endroit different.
Sinon, une solution encore plus simple ... Tu crées une table. Tu t'assures qu'elle ne contienne qu'une seule ligne : la valeur de ton paramètre. Tu fais ta requête, mais au lieu d'utiliser un paramètre, tu utilise le champ de la table (que tu auras préalablement ajoutée à la requête) Et ton [ID], il ne te reste plus qu'à l'inscrire dans la table :)
-- Maxence HUBICHE Formateur et Developpeur Indépendant Microsoft MVP Office Systems - Access Rédacteur & Développeur sur http://www.developpez.com Découvrez le forum Access de Developpez.com ici : http://www.developpez.net/forums/viewforum.php?f8 "La Mouette" a écrit dans le message de news:
Bonjour,
j'ai une query qui prend en parametre une valeur: [id]. Dans le code VB, a un moment je fais ceci afin d'attribuer une valeur à [id]:
Dim qry As DAO.QueryDef Dim db As DAO.Database
Set db = CurrentDb Set qry = db.QueryDefs("maRequete") qry.Parameters("id") = Me!SousFormulaire!idCheque
'ICI JE VOUDRAIS SAUVER LA QUERY (SAUVER LA NOUVELLE VALEUR DE ID DANS LA REQUETE)
qry.Close
Et je ne veux pas attribuer la valeur de [id] directement dans la requete car c'est une requete que j'utilise a plusieur endroit different.
Merci encore!
?Lo»Paris?
Maxence HUBICHE [MVP Access] wrote:
Sinon, une solution encore plus simple ... Tu crées une table. Tu t'assures qu'elle ne contienne qu'une seule ligne : la valeur de ton paramètre. Tu fais ta requête, mais au lieu d'utiliser un paramètre, tu utilise le champ de la table (que tu auras préalablement ajoutée à la requête) Et ton [ID], il ne te reste plus qu'à l'inscrire dans la table :)
Salut Maxence,
Offff! c'est pas si compliquer que cela, si tu veux je peu t'expliquer comme cela fonctionne, autrement ton idée est bonne.
-- °Laurent°
Maxence HUBICHE [MVP Access] wrote:
Sinon, une solution encore plus simple ...
Tu crées une table.
Tu t'assures qu'elle ne contienne qu'une seule ligne : la valeur de
ton paramètre.
Tu fais ta requête, mais au lieu d'utiliser un paramètre, tu utilise
le champ de la table (que tu auras préalablement ajoutée à la requête)
Et ton [ID], il ne te reste plus qu'à l'inscrire dans la table :)
Salut Maxence,
Offff! c'est pas si compliquer que cela, si tu veux je peu t'expliquer comme
cela fonctionne, autrement ton idée est bonne.
Sinon, une solution encore plus simple ... Tu crées une table. Tu t'assures qu'elle ne contienne qu'une seule ligne : la valeur de ton paramètre. Tu fais ta requête, mais au lieu d'utiliser un paramètre, tu utilise le champ de la table (que tu auras préalablement ajoutée à la requête) Et ton [ID], il ne te reste plus qu'à l'inscrire dans la table :)
Salut Maxence,
Offff! c'est pas si compliquer que cela, si tu veux je peu t'expliquer comme cela fonctionne, autrement ton idée est bonne.