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

Filtrage d'état

1 réponse
Avatar
David
Bonsoir à tous

Lors d'un précedent fil j'ai travaillé sur la possiblilité d'effectuer
un "emailing" à des commerciaux pour leur envoyer la liste client.(Merci
Fabien)

Après quelqueS déboireS, toute la procédure fonctionne à merveille.
Mais (car ya toujours un MAIS) lorsque je veux y introduire des
paramètres de filtrage (ex: liste client par commercial) le code :

currentdb.querydefs("rqt liste clients").sql="select * from [tbl
employés] where [code employé]=" & rst("code employé")

à pour effet de remplacer tout les paramètres de ma requête liste client
par la table Employés avec en champs unique le code employé.

une âme charitable aurait il une idée de la façon dont on peut passer
les paramètres?

ci après le code dans son intégralité :

Public Sub Emailing()
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim strMsg As String

Set cnn = CurrentProject.Connection
Set rst = New ADODB.Recordset
rst.Open "SELECT * FROM [tbl employés] WHERE [classe
eemployés]="commercial" and Not Isnull(Email);", cnn
While Not rst.EOF

currentdb.querydefs("rqt liste clients").sql="select * from [tbl
employés] where [code employé]=" & rst("code employé")

DoCmd.SendObject acSendreport, "rpt liste clients",
acFormatSNP,rst("Email") , , "Votre liste Clients", strMsg, True

rst.MoveNext
Wend
rst.Close
Set rst = Nothing
Set cnn = Nothing

End Sub


j'ai bien essayé de mettre :

currentdb.querydefs("rqt liste clients").sql="select * from [rqt liste
clients] where [code employé]=" & rst("code employé")

mais avec ça j'ai une erreur "référence circulaire causée par "rqt liste
client"



Merci par avance

D.

1 réponse

Avatar
David
Bonsoir à tous

Lors d'un précedent fil j'ai travaillé sur la possiblilité d'effectuer
un "emailing" à des commerciaux pour leur envoyer la liste client.(Merci
Fabien)

Après quelqueS déboireS, toute la procédure fonctionne à merveille.
Mais (car ya toujours un MAIS) lorsque je veux y introduire des
paramètres de filtrage (ex: liste client par commercial) le code :

currentdb.querydefs("rqt liste clients").sql="select * from [tbl
employés] where [code employé]=" & rst("code employé")

à pour effet de remplacer tout les paramètres de ma requête liste client
par la table Employés avec en champs unique le code employé.

une âme charitable aurait il une idée de la façon dont on peut passer
les paramètres?

ci après le code dans son intégralité :

Public Sub Emailing()
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim strMsg As String

Set cnn = CurrentProject.Connection
Set rst = New ADODB.Recordset
rst.Open "SELECT * FROM [tbl employés] WHERE [classe
eemployés]="commercial" and Not Isnull(Email);", cnn
While Not rst.EOF

currentdb.querydefs("rqt liste clients").sql="select * from [tbl
employés] where [code employé]=" & rst("code employé")

DoCmd.SendObject acSendreport, "rpt liste clients",
acFormatSNP,rst("Email") , , "Votre liste Clients", strMsg, True

rst.MoveNext
Wend
rst.Close
Set rst = Nothing
Set cnn = Nothing

End Sub


j'ai bien essayé de mettre :

currentdb.querydefs("rqt liste clients").sql="select * from [rqt liste
clients] where [code employé]=" & rst("code employé")

mais avec ça j'ai une erreur "référence circulaire causée par "rqt liste
client"



Merci par avance

D.

En passant par une requête intermédiaire tout passe bien.


Merci encore pour tout les animateurs de ce forum

D.