je tourne et retourne ca depuis hier, y a rien a faire
alors je viens vers vous.
Dans ma table j'ai un champ date ( et d'autres).
Ce champ peut etre rempli ou non ( cela indique si une
operation a ete realisee ou non).
Pour requeter sur ce champ j'ai 3 solutions.
En mode requete ou Sql dans le critere je met is Null, ou
is Not Null ou pas criteres pour avoir tous les enreg. ca
marche tres bien.
Mais pour les utilsateurs je dois passer par un formulaire
destine a remplir le(s) critere(s) de recherches. C'est la
que ca buggue je ne sais pas ce que je dois mettre dans le
controle du formulaire pour renvoyer is null ou is not
Null ou tout et ce que je dois mettre dans le where de la
requete pour recuperer le contenu de ce controle.
Quoique je fasse j'ai toujours des messages d'erreur, "Too
complex....."
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
Eric
"Frederic" écrivait news:1e32f01c45519$47e1cbe0$:
Bonjour,
je tourne et retourne ca depuis hier, y a rien a faire alors je viens vers vous.
Dans ma table j'ai un champ date ( et d'autres). Ce champ peut etre rempli ou non ( cela indique si une operation a ete realisee ou non).
Pour requeter sur ce champ j'ai 3 solutions. En mode requete ou Sql dans le critere je met is Null, ou is Not Null ou pas criteres pour avoir tous les enreg. ca marche tres bien.
Mais pour les utilsateurs je dois passer par un formulaire destine a remplir le(s) critere(s) de recherches. C'est la que ca buggue je ne sais pas ce que je dois mettre dans le controle du formulaire pour renvoyer is null ou is not Null ou tout et ce que je dois mettre dans le where de la requete pour recuperer le contenu de ce controle.
Quoique je fasse j'ai toujours des messages d'erreur, "Too complex....."
Merci pour votre aide
Frederic
Bonjour Frederic,
Tu crées un formulaire sur ta table et tu peux mettre un cadre avec 3 options : Renseigné, Non renseigné, Tous (controle indépendant) et sur l'évènement AfterUpdate (Après MAj) de ce cadre (nom CadreChoix) la proc suivante:
Private Sub CadreChoix_AfterUpdate() Dim Filtrage As String If CadreChoix = 3 Then FilterOn = False Exit Sub End If Select Case CadreChoix Case 1 Filtrage = "not isnull([TonChampDate])" Case 2 Filtrage = "isnull([TonChampDate])" End Select Me.Filter = Filtrage Me.FilterOn = True End Sub
je tourne et retourne ca depuis hier, y a rien a faire
alors je viens vers vous.
Dans ma table j'ai un champ date ( et d'autres).
Ce champ peut etre rempli ou non ( cela indique si une
operation a ete realisee ou non).
Pour requeter sur ce champ j'ai 3 solutions.
En mode requete ou Sql dans le critere je met is Null, ou
is Not Null ou pas criteres pour avoir tous les enreg. ca
marche tres bien.
Mais pour les utilsateurs je dois passer par un formulaire
destine a remplir le(s) critere(s) de recherches. C'est la
que ca buggue je ne sais pas ce que je dois mettre dans le
controle du formulaire pour renvoyer is null ou is not
Null ou tout et ce que je dois mettre dans le where de la
requete pour recuperer le contenu de ce controle.
Quoique je fasse j'ai toujours des messages d'erreur, "Too
complex....."
Merci pour votre aide
Frederic
Bonjour Frederic,
Tu crées un formulaire sur ta table et tu peux mettre un cadre avec 3
options : Renseigné, Non renseigné, Tous (controle indépendant)
et sur l'évènement AfterUpdate (Après MAj) de ce cadre (nom CadreChoix)
la proc suivante:
Private Sub CadreChoix_AfterUpdate()
Dim Filtrage As String
If CadreChoix = 3 Then
FilterOn = False
Exit Sub
End If
Select Case CadreChoix
Case 1
Filtrage = "not isnull([TonChampDate])"
Case 2
Filtrage = "isnull([TonChampDate])"
End Select
Me.Filter = Filtrage
Me.FilterOn = True
End Sub
je tourne et retourne ca depuis hier, y a rien a faire alors je viens vers vous.
Dans ma table j'ai un champ date ( et d'autres). Ce champ peut etre rempli ou non ( cela indique si une operation a ete realisee ou non).
Pour requeter sur ce champ j'ai 3 solutions. En mode requete ou Sql dans le critere je met is Null, ou is Not Null ou pas criteres pour avoir tous les enreg. ca marche tres bien.
Mais pour les utilsateurs je dois passer par un formulaire destine a remplir le(s) critere(s) de recherches. C'est la que ca buggue je ne sais pas ce que je dois mettre dans le controle du formulaire pour renvoyer is null ou is not Null ou tout et ce que je dois mettre dans le where de la requete pour recuperer le contenu de ce controle.
Quoique je fasse j'ai toujours des messages d'erreur, "Too complex....."
Merci pour votre aide
Frederic
Bonjour Frederic,
Tu crées un formulaire sur ta table et tu peux mettre un cadre avec 3 options : Renseigné, Non renseigné, Tous (controle indépendant) et sur l'évènement AfterUpdate (Après MAj) de ce cadre (nom CadreChoix) la proc suivante:
Private Sub CadreChoix_AfterUpdate() Dim Filtrage As String If CadreChoix = 3 Then FilterOn = False Exit Sub End If Select Case CadreChoix Case 1 Filtrage = "not isnull([TonChampDate])" Case 2 Filtrage = "isnull([TonChampDate])" End Select Me.Filter = Filtrage Me.FilterOn = True End Sub
A+ Eric
Eric
re,
J'avais mal lu ton post ou lu trop rapidement. Peut-être ne veux-tu qu'on formulaire de saisie des paramètres et derrière exécuter ta requête.
Dans ce cas-là, tu crées un formulaire indépendant contenant un cadre avec 3 options (idem post précédent) Renseigné, Non renseigné et tous. Sur mise à jour du cadre :
Private Sub CadreChoix_AfterUpdate() Dim filtrage As String, qry As DAO.QueryDef Dim txtsql As String Set qry = CurrentDb.QueryDefs("TaRequête") filtrage = "" Select Case CadreChoix Case 1 filtrage = " where not isnull([TonChpDate])" Case 2 filtrage = " where isnull([TonChpDate])" End Select With qry 'on sauve le sql initial de la requête txtsql = .sql ' on enlève le ; final du sql .sql = Left(.sql, Len(.sql) - 3) .sql = .sql & filtrage & ";" End With DoCmd.OpenQuery "TaRequête" 'on remet le sql initial de la requête qry.sql = txtsql Set qry = Nothing End Sub
re,
J'avais mal lu ton post ou lu trop rapidement. Peut-être ne veux-tu qu'on
formulaire de saisie des paramètres et derrière exécuter ta requête.
Dans ce cas-là, tu crées un formulaire indépendant contenant un cadre avec
3 options (idem post précédent) Renseigné, Non renseigné et tous.
Sur mise à jour du cadre :
Private Sub CadreChoix_AfterUpdate()
Dim filtrage As String, qry As DAO.QueryDef
Dim txtsql As String
Set qry = CurrentDb.QueryDefs("TaRequête")
filtrage = ""
Select Case CadreChoix
Case 1
filtrage = " where not isnull([TonChpDate])"
Case 2
filtrage = " where isnull([TonChpDate])"
End Select
With qry
'on sauve le sql initial de la requête
txtsql = .sql
' on enlève le ; final du sql
.sql = Left(.sql, Len(.sql) - 3)
.sql = .sql & filtrage & ";"
End With
DoCmd.OpenQuery "TaRequête"
'on remet le sql initial de la requête
qry.sql = txtsql
Set qry = Nothing
End Sub
J'avais mal lu ton post ou lu trop rapidement. Peut-être ne veux-tu qu'on formulaire de saisie des paramètres et derrière exécuter ta requête.
Dans ce cas-là, tu crées un formulaire indépendant contenant un cadre avec 3 options (idem post précédent) Renseigné, Non renseigné et tous. Sur mise à jour du cadre :
Private Sub CadreChoix_AfterUpdate() Dim filtrage As String, qry As DAO.QueryDef Dim txtsql As String Set qry = CurrentDb.QueryDefs("TaRequête") filtrage = "" Select Case CadreChoix Case 1 filtrage = " where not isnull([TonChpDate])" Case 2 filtrage = " where isnull([TonChpDate])" End Select With qry 'on sauve le sql initial de la requête txtsql = .sql ' on enlève le ; final du sql .sql = Left(.sql, Len(.sql) - 3) .sql = .sql & filtrage & ";" End With DoCmd.OpenQuery "TaRequête" 'on remet le sql initial de la requête qry.sql = txtsql Set qry = Nothing End Sub