VBA Access : DoCmd.ApplyFilter ..... HELP ....

Signaler
Messages postés
214
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
9 avril 2010
-
Messages postés
214
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
9 avril 2010
-
Slut à tous, vous qui bosser alors que le temps permettrai une tite pause ,

voila, je suis sur Access, et j'essai de faira fonctionner une commande de filtre sur une table.

J'explique :
Ma table contient des champs dont le champs "Montant" avec comme proriété "réel double, standart, décimal (2)"

J'ai un formulaire avec différents critères dont "CritèreMontInf" et "CritèreMontSup"
Lorsque je clique sur mon bouton "Rechercher" je cherche a obtenir les enregistrements suivants mes critères choisit dont ma fourchette de montant ...

mais cela ne fonctionne pas .... :-<
j'ai le message d'execution suivant : 2501 --> Action Apply Filter a été annulé !!!

Voici le code écrit VBA :

Sub Rechercher_Click()

If IsNull(Me.CritèreMontInf) = False Then
MontantInf = Me.CritèreMontInf
For i = 1 To Len(MontantInf)
If Mid(MontantInf, i, 1) Like "," Then MontantInf = Mid(MontantInf, 1, i - 1) & "." & Mid(MontantInf, i + 1): Exit For
Next i
If Critère = "" Then
Critère = "[Liste_écriture]![Montant] >= """ & MontantInf & """"
Else
Critère = Critère & " and [Montant] >= """ & MontantInf & """"
End If

If IsNull(Me.CritèreMontSup) = False Then
MontantSup = Me.CritèreMontSup
For i = 1 To Len(MontantSup)
If Mid(MontantSup, i, 1) Like "," Then MontantSup = Mid(MontantSup, 1, i - 1) & "." & Mid(MontantSup, i + 1): Exit For
Next i
Critère = Critère & " and [Montant] <= """ & MontantSup & """"
Else
MsgBox "Merci d'indiquer un Montant Supérieur.", vbInformation, "Erreur Recherche : Critère Montant Supérieur": Exit Sub
End If
End If

DoCmd.ApplyFilter , Critère 'Et ca BUUUUUUGGGGG ici ... avec erreur 2501

End Sub

Ce qui me parait anormal ... j'ai d'autre critère de recherche sur mon bouton "Rechercher", comme une fourcette de date, et d'autre truc ...

Mais il n'y a que la recherche par montant qui ne fonctionne pas ...

Si une âme charitable à lu ce message jusqu'o bout et me m'aiguiller sur le pourquoi du comment ca ne fonctionne pas ... je vous remerci !!!

Chapat'

2 réponses

Messages postés
940
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
3 février 2011
7
Es-tu sur que tu as besoin d'autant de guillemet?

Pour des nombres, pas besoin de doubler ou de tripler les guillemets.

C'est utile seuleuement si tu as des caractères spéciaux dans ton champ.

As-tu fais un msgbox de ton critère avec de faire applyfilter pour voir ce qu'il contient.

Ensuite, as-tu essayé de faire le filtre à la main (cad par les
boutons) avec le contenu de ton critère pour voir si tu as le même
message. Je te conseil de faire ça dans un premier temps.

TBBUIM
Messages postés
214
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
9 avril 2010
4
Slut tbbuim1 !!!

Je dois dire que tu m'as été de grand conseil !!!!

tu avais raison !!!

trop de guillement ... ca a tué mon code !!!, et puis le msgbox a placé devant l'erreur afin de visualiser le code, c'est mieux que de le reagrder dans tout mon code VB !!!

franchement !!! merci ... la semaine commence bien !!!

a++++++++ ChaPaTa