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

Probleme dans un état

1 réponse
Avatar
Stephanie
Bonjour

J'ai fait un =E9tat pour mes ventes du mois, Mais quand=20
j'=E9cris le mois du d=E9but et le mois de la fin, il me=20
donne tous mes enrigistrements et non seulement ceux que=20
j'ai demander. Je ne sais pas c'Est quoi mon erreur

JE n'ai fait aucune requ=E8te pour =E7a.
Je vous ai donner les deux code que j'ai mis celui du=20
Formulaire et celui de l'=E9tat.
J'esp=E8re que cela va pouvoir vous aider



Ceci ce sont les code que j'ai dans mon=20
formulaire "P=E9riode de l'=E9tat":
--------
Private Sub Form_Open(Cancel As Integer)
Me.Caption =3D Forms![P=E9riode de l'=E9tat].OpenArgs
End Sub

Private Sub Aper=E7u_Click()
If IsNull([Date d=E9but op=E9ration]) Or IsNull([Date fin=20
op=E9ration]) Then
MsgBox "Vous devez taper une date de d=E9but et une=20
date de fin."
DoCmd.GoToControl "Date d=E9but op=E9ration"
Else
If [Date d=E9but op=E9ration] > [Date fin op=E9ration]=20
Then
MsgBox "La date de fin doit =EAtre post=E9rieure=20
=E0 la date de d=E9but."
DoCmd.GoToControl "Date d=E9but op=E9ration"
Else
Me.Visible =3D False
End If
End If
End Sub
-------

Ceci est le code que j'ai dans mon =C9tats "Transaction":
-----
Private Sub Report_NoData(Cancel As Integer)
MsgBox "Il n'existe aucune donn=E9e pour cet =E9tat. Il=20
va =EAtre annul=E9..."
Cancel =3D -1
End Sub

Private Sub Report_Close()
DoCmd.Close acForm, "P=E9riode de l'=E9tat"
End Sub

Private Sub Report_Open(Cancel As Integer)
DoCmd.OpenForm "P=E9riode de l'=E9tat", , , , ,=20
acDialog, "Transactions1"
If Not IsLoaded("P=E9riode de l'=E9tat") Then
Cancel =3D True
End If
End Sub
-----

1 réponse

Avatar
Raymond [mvp]
Bonjour.

Si tu n'as pas de requête, tu ne testes pas les dates donc tu as tous les
enregistrements.
passe en modif d'état
propriétés: onglet données, ligne source:
soit tu as un nom de table soit une clause select.
clique sur le bouton en fin de ligne (...) ça va afficher le concepteur de
requête.
tu dois avoir une colonne "date" (nommée: datede.... par exemple)
sur la ligne critère tu indiques le critère de sélection:
Entre [Date début opération] Et [Date fin opération]
clique sur la X de fermeture de la requête, enregistre, fais un essai.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Stephanie" a écrit dans le message de
news:956701c43378$7f461d10$
Bonjour

J'ai fait un état pour mes ventes du mois, Mais quand
j'écris le mois du début et le mois de la fin, il me
donne tous mes enrigistrements et non seulement ceux que
j'ai demander. Je ne sais pas c'Est quoi mon erreur

JE n'ai fait aucune requète pour ça.
Je vous ai donner les deux code que j'ai mis celui du
Formulaire et celui de l'état.
J'espère que cela va pouvoir vous aider



Ceci ce sont les code que j'ai dans mon
formulaire "Période de l'état":
--------
Private Sub Form_Open(Cancel As Integer)
Me.Caption = Forms![Période de l'état].OpenArgs
End Sub

Private Sub Aperçu_Click()
If IsNull([Date début opération]) Or IsNull([Date fin
opération]) Then
MsgBox "Vous devez taper une date de début et une
date de fin."
DoCmd.GoToControl "Date début opération"
Else
If [Date début opération] > [Date fin opération]
Then
MsgBox "La date de fin doit être postérieure
à la date de début."
DoCmd.GoToControl "Date début opération"
Else
Me.Visible = False
End If
End If
End Sub
-------

Ceci est le code que j'ai dans mon États "Transaction":
-----
Private Sub Report_NoData(Cancel As Integer)
MsgBox "Il n'existe aucune donnée pour cet état. Il
va être annulé..."
Cancel = -1
End Sub

Private Sub Report_Close()
DoCmd.Close acForm, "Période de l'état"
End Sub

Private Sub Report_Open(Cancel As Integer)
DoCmd.OpenForm "Période de l'état", , , , ,
acDialog, "Transactions1"
If Not IsLoaded("Période de l'état") Then
Cancel = True
End If
End Sub
-----