Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat, qu'on
ouvre à l'ouverture d'un état, dans lequel on place une date de début et une
date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests puis
rend le form invisible.
Dans l'état, la source SQL fait appel aux données du form pour définir une
période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit],
[Produits].[Unité], [Produits].[NomProduit],
[Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur],
Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM
(Fournisseurs INNER JOIN [Bons de commande] ON
[Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER
JOIN (Produits INNER JOIN [Transactions inventaire] ON
[Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de
commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE
((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de
l'état]!DateDébut And ([Transactions
inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin))
GROUP BY [Produits].[RéfProduit], [Produits].[Unité],
[Produits].[NomProduit], [Fournisseurs].[RéfFournisseur],
[Fournisseurs].[NomFournisseur];
Mon problème est le suivant :
L'état s'ouvre correctement et ouvre correctement le form Période de l'état
(que je me suis contenté d'importer). Lorsque j'ai introduit mes données
dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la boîte
de message me demandant d'introduire les données que j'ai introduites dans
le formulaire Période de l'état.
Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] =
Je dois ensuite introduire la date de début
Le message suivant est : Formulaires!Période de l'état!Datedébut, 3
[Unknown] =
Ici je dois introduire la date de fin, et non de début, comme stipulé dans
le titre.
J'ai essayé
WHERE ((([Transactions inventaire].[DateTransaction])>=#Formulaires![Période
de l'état]!DateDébut# And ([Transactions
inventaire].[DateTransaction])<=#Formulaires![Période de l'état]!DateFin#))
WHERE ((([Transactions inventaire].[DateTransaction])>=#" &
Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And
([Transactions inventaire].[DateTransaction])<=#" &
Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.
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
Pierre CFI [mvp]
bonjour j'ai un doute sur la chronologie des faits 1 on ouvre le formulaire 2 on remplit les données 3 on ouvre l'état 4 on masque le form (pourquoi ?) si l'état est ouvert sans form, çà marche pas
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer Access http://users.skynet.be/mpfa/ Excel http://www.excelabo.net Site perso http://access.cfi.free.fr "Jean-Marc" a écrit dans le message de news:
Salut à tous,
Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat, qu'on ouvre à l'ouverture d'un état, dans lequel on place une date de début et une date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests puis rend le form invisible. Dans l'état, la source SQL fait appel aux données du form pour définir une période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur], Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER JOIN (Produits INNER JOIN [Transactions inventaire] ON [Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE ((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de l'état]!DateDébut And ([Transactions inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin)) GROUP BY [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur];
Mon problème est le suivant : L'état s'ouvre correctement et ouvre correctement le form Période de l'état (que je me suis contenté d'importer). Lorsque j'ai introduit mes données dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la boîte de message me demandant d'introduire les données que j'ai introduites dans le formulaire Période de l'état. Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] > Je dois ensuite introduire la date de début Le message suivant est : Formulaires!Période de l'état!Datedébut, 3 [Unknown] > Ici je dois introduire la date de fin, et non de début, comme stipulé dans le titre.
J'ai essayé WHERE ((([Transactions inventaire].[DateTransaction])>=#Formulaires![Période de l'état]!DateDébut# And ([Transactions inventaire].[DateTransaction])<=#Formulaires![Période de l'état]!DateFin#)) WHERE ((([Transactions inventaire].[DateTransaction])>=#" & Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And ([Transactions inventaire].[DateTransaction])<=#" & Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.
Comment dois-je faire ? Que fais-je mal ?
Merci de vos z'avis z'avisés,
Jean-Marc
bonjour
j'ai un doute sur la chronologie des faits
1 on ouvre le formulaire
2 on remplit les données
3 on ouvre l'état
4 on masque le form (pourquoi ?)
si l'état est ouvert sans form, çà marche pas
--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net
Site perso
http://access.cfi.free.fr
"Jean-Marc" <NoSpam.jm.deneyer@advalvas.be> a écrit dans le message de news:OWbMxOt3EHA.936@TK2MSFTNGP12.phx.gbl...
Salut à tous,
Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat, qu'on
ouvre à l'ouverture d'un état, dans lequel on place une date de début et une
date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests puis
rend le form invisible.
Dans l'état, la source SQL fait appel aux données du form pour définir une
période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit],
[Produits].[Unité], [Produits].[NomProduit],
[Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur],
Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM
(Fournisseurs INNER JOIN [Bons de commande] ON
[Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER
JOIN (Produits INNER JOIN [Transactions inventaire] ON
[Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de
commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE
((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de
l'état]!DateDébut And ([Transactions
inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin))
GROUP BY [Produits].[RéfProduit], [Produits].[Unité],
[Produits].[NomProduit], [Fournisseurs].[RéfFournisseur],
[Fournisseurs].[NomFournisseur];
Mon problème est le suivant :
L'état s'ouvre correctement et ouvre correctement le form Période de l'état
(que je me suis contenté d'importer). Lorsque j'ai introduit mes données
dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la boîte
de message me demandant d'introduire les données que j'ai introduites dans
le formulaire Période de l'état.
Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] > Je dois ensuite introduire la date de début
Le message suivant est : Formulaires!Période de l'état!Datedébut, 3
[Unknown] > Ici je dois introduire la date de fin, et non de début, comme stipulé dans
le titre.
J'ai essayé
WHERE ((([Transactions inventaire].[DateTransaction])>=#Formulaires![Période
de l'état]!DateDébut# And ([Transactions
inventaire].[DateTransaction])<=#Formulaires![Période de l'état]!DateFin#))
WHERE ((([Transactions inventaire].[DateTransaction])>=#" &
Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And
([Transactions inventaire].[DateTransaction])<=#" &
Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.
bonjour j'ai un doute sur la chronologie des faits 1 on ouvre le formulaire 2 on remplit les données 3 on ouvre l'état 4 on masque le form (pourquoi ?) si l'état est ouvert sans form, çà marche pas
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer Access http://users.skynet.be/mpfa/ Excel http://www.excelabo.net Site perso http://access.cfi.free.fr "Jean-Marc" a écrit dans le message de news:
Salut à tous,
Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat, qu'on ouvre à l'ouverture d'un état, dans lequel on place une date de début et une date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests puis rend le form invisible. Dans l'état, la source SQL fait appel aux données du form pour définir une période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur], Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER JOIN (Produits INNER JOIN [Transactions inventaire] ON [Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE ((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de l'état]!DateDébut And ([Transactions inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin)) GROUP BY [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur];
Mon problème est le suivant : L'état s'ouvre correctement et ouvre correctement le form Période de l'état (que je me suis contenté d'importer). Lorsque j'ai introduit mes données dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la boîte de message me demandant d'introduire les données que j'ai introduites dans le formulaire Période de l'état. Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] > Je dois ensuite introduire la date de début Le message suivant est : Formulaires!Période de l'état!Datedébut, 3 [Unknown] > Ici je dois introduire la date de fin, et non de début, comme stipulé dans le titre.
J'ai essayé WHERE ((([Transactions inventaire].[DateTransaction])>=#Formulaires![Période de l'état]!DateDébut# And ([Transactions inventaire].[DateTransaction])<=#Formulaires![Période de l'état]!DateFin#)) WHERE ((([Transactions inventaire].[DateTransaction])>=#" & Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And ([Transactions inventaire].[DateTransaction])<=#" & Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.
Comment dois-je faire ? Que fais-je mal ?
Merci de vos z'avis z'avisés,
Jean-Marc
Jean-Marc
Salut Pierre,
A l'ouverture de l'état, on teste si Période de l'état est ouvert. S'il ne l'est pas on l'ouvre. Comme il est ouvert, on introduit les données (form modal) et on appuie sur aperçu.
code de Période de l'état : Private Sub Form_Open(Cancel As Integer) Me.Caption = Me.OpenArgs End Sub Private Sub Aperçu_Click() If IsNull([DateDébut]) Or IsNull([DateFin]) Then MsgBox "Vous devez taper une date de début et une date de fin." DoCmd.GoToControl "DateDébut" Else If [DateDébut] > [DateFin] Then MsgBox "La date de fin doit être postérieure à la date de début." DoCmd.GoToControl "DateDébut" Else Me.Visible = False End If End If End Sub
Source de l'état : SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur], Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER JOIN (Produits INNER JOIN [Transactions inventaire] ON [Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE ((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de l'état]!DateDébut And ([Transactions inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin)) GROUP BY [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur];
Sur fermeture de l'état : fermeture de Période de l'état
"Pierre CFI [mvp]" a écrit dans le message de news:
bonjour j'ai un doute sur la chronologie des faits 1 on ouvre le formulaire 2 on remplit les données 3 on ouvre l'état 4 on masque le form (pourquoi ?) si l'état est ouvert sans form, çà marche pas
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer Access http://users.skynet.be/mpfa/ Excel http://www.excelabo.net Site perso http://access.cfi.free.fr "Jean-Marc" a écrit dans le message de news:
Salut à tous,
Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat, qu'on
ouvre à l'ouverture d'un état, dans lequel on place une date de début et une
date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests puis
rend le form invisible. Dans l'état, la source SQL fait appel aux données du form pour définir une
période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur], Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER
JOIN (Produits INNER JOIN [Transactions inventaire] ON [Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de
commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE
((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de l'état]!DateDébut And ([Transactions inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin))
GROUP BY [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur];
Mon problème est le suivant : L'état s'ouvre correctement et ouvre correctement le form Période de l'état
(que je me suis contenté d'importer). Lorsque j'ai introduit mes données dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la boîte
de message me demandant d'introduire les données que j'ai introduites dans
le formulaire Période de l'état. Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] > > Je dois ensuite introduire la date de début Le message suivant est : Formulaires!Période de l'état!Datedébut, 3 [Unknown] > > Ici je dois introduire la date de fin, et non de début, comme stipulé dans
le titre.
J'ai essayé WHERE ((([Transactions inventaire].[DateTransaction])>=#Formulaires![Période
de l'état]!DateDébut# And ([Transactions inventaire].[DateTransaction])<=#Formulaires![Période de l'état]!DateFin#))
WHERE ((([Transactions inventaire].[DateTransaction])>=#" & Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And ([Transactions inventaire].[DateTransaction])<=#" & Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.
Comment dois-je faire ? Que fais-je mal ?
Merci de vos z'avis z'avisés,
Jean-Marc
Salut Pierre,
A l'ouverture de l'état, on teste si Période de l'état est ouvert. S'il ne
l'est pas on l'ouvre.
Comme il est ouvert, on introduit les données (form modal) et on appuie sur
aperçu.
code de Période de l'état :
Private Sub Form_Open(Cancel As Integer)
Me.Caption = Me.OpenArgs
End Sub
Private Sub Aperçu_Click()
If IsNull([DateDébut]) Or IsNull([DateFin]) Then
MsgBox "Vous devez taper une date de début et une date de fin."
DoCmd.GoToControl "DateDébut"
Else
If [DateDébut] > [DateFin] Then
MsgBox "La date de fin doit être postérieure à la date de
début."
DoCmd.GoToControl "DateDébut"
Else
Me.Visible = False
End If
End If
End Sub
Source de l'état :
SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité],
[Produits].[NomProduit], [Fournisseurs].[RéfFournisseur],
[Fournisseurs].[NomFournisseur], Sum([Transactions
inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER
JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de
commande].[RéfFournisseur]) INNER JOIN (Produits INNER JOIN [Transactions
inventaire] ON [Produits].[RéfProduit]=[Transactions
inventaire].[RéfProduit]) ON [Bons de
commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE
((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de
l'état]!DateDébut And ([Transactions
inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin))
GROUP BY [Produits].[RéfProduit], [Produits].[Unité],
[Produits].[NomProduit], [Fournisseurs].[RéfFournisseur],
[Fournisseurs].[NomFournisseur];
Sur fermeture de l'état : fermeture de Période de l'état
"Pierre CFI [mvp]" <XXX_pierresalaun@aol.com> a écrit dans le message de
news:edagERt3EHA.4004@tk2msftngp13.phx.gbl...
bonjour
j'ai un doute sur la chronologie des faits
1 on ouvre le formulaire
2 on remplit les données
3 on ouvre l'état
4 on masque le form (pourquoi ?)
si l'état est ouvert sans form, çà marche pas
--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net
Site perso
http://access.cfi.free.fr
"Jean-Marc" <NoSpam.jm.deneyer@advalvas.be> a écrit dans le message de
news:OWbMxOt3EHA.936@TK2MSFTNGP12.phx.gbl...
Salut à tous,
Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat,
qu'on
ouvre à l'ouverture d'un état, dans lequel on place une date de début et
une
date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests
puis
rend le form invisible.
Dans l'état, la source SQL fait appel aux données du form pour définir
une
période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit],
[Produits].[Unité], [Produits].[NomProduit],
[Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur],
Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM
(Fournisseurs INNER JOIN [Bons de commande] ON
[Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur])
INNER
JOIN (Produits INNER JOIN [Transactions inventaire] ON
[Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons
de
commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande]
WHERE
((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de
l'état]!DateDébut And ([Transactions
inventaire].[DateTransaction])<=Formulaires![Période de
l'état]!DateFin))
GROUP BY [Produits].[RéfProduit], [Produits].[Unité],
[Produits].[NomProduit], [Fournisseurs].[RéfFournisseur],
[Fournisseurs].[NomFournisseur];
Mon problème est le suivant :
L'état s'ouvre correctement et ouvre correctement le form Période de
l'état
(que je me suis contenté d'importer). Lorsque j'ai introduit mes données
dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la
boîte
de message me demandant d'introduire les données que j'ai introduites
dans
le formulaire Période de l'état.
Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] > > Je dois ensuite introduire la date de début
Le message suivant est : Formulaires!Période de l'état!Datedébut, 3
[Unknown] > > Ici je dois introduire la date de fin, et non de début, comme stipulé
dans
le titre.
J'ai essayé
WHERE ((([Transactions
inventaire].[DateTransaction])>=#Formulaires![Période
de l'état]!DateDébut# And ([Transactions
inventaire].[DateTransaction])<=#Formulaires![Période de
l'état]!DateFin#))
WHERE ((([Transactions inventaire].[DateTransaction])>=#" &
Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And
([Transactions inventaire].[DateTransaction])<=#" &
Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.
A l'ouverture de l'état, on teste si Période de l'état est ouvert. S'il ne l'est pas on l'ouvre. Comme il est ouvert, on introduit les données (form modal) et on appuie sur aperçu.
code de Période de l'état : Private Sub Form_Open(Cancel As Integer) Me.Caption = Me.OpenArgs End Sub Private Sub Aperçu_Click() If IsNull([DateDébut]) Or IsNull([DateFin]) Then MsgBox "Vous devez taper une date de début et une date de fin." DoCmd.GoToControl "DateDébut" Else If [DateDébut] > [DateFin] Then MsgBox "La date de fin doit être postérieure à la date de début." DoCmd.GoToControl "DateDébut" Else Me.Visible = False End If End If End Sub
Source de l'état : SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur], Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER JOIN (Produits INNER JOIN [Transactions inventaire] ON [Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE ((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de l'état]!DateDébut And ([Transactions inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin)) GROUP BY [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur];
Sur fermeture de l'état : fermeture de Période de l'état
"Pierre CFI [mvp]" a écrit dans le message de news:
bonjour j'ai un doute sur la chronologie des faits 1 on ouvre le formulaire 2 on remplit les données 3 on ouvre l'état 4 on masque le form (pourquoi ?) si l'état est ouvert sans form, çà marche pas
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer Access http://users.skynet.be/mpfa/ Excel http://www.excelabo.net Site perso http://access.cfi.free.fr "Jean-Marc" a écrit dans le message de news:
Salut à tous,
Dans les exemples j'ai trouvé un formulaire appelé Période de l'Etat, qu'on
ouvre à l'ouverture d'un état, dans lequel on place une date de début et une
date de fin. Sur ce form se trouve un bouton aperçu qui fait qq tests puis
rend le form invisible. Dans l'état, la source SQL fait appel aux données du form pour définir une
période dans laquelle les données sont affichées.
Mon SQL est : SELECT DISTINCTROW [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur], Sum([Transactions inventaire].[QtéCommandées]) AS [Total unités] FROM (Fournisseurs INNER JOIN [Bons de commande] ON [Fournisseurs].[RéfFournisseur]=[Bons de commande].[RéfFournisseur]) INNER
JOIN (Produits INNER JOIN [Transactions inventaire] ON [Produits].[RéfProduit]=[Transactions inventaire].[RéfProduit]) ON [Bons de
commande].[RéfBonCommande]=[Transactions inventaire].[RéfBonCommande] WHERE
((([Transactions inventaire].[DateTransaction])>=Formulaires![Période de l'état]!DateDébut And ([Transactions inventaire].[DateTransaction])<=Formulaires![Période de l'état]!DateFin))
GROUP BY [Produits].[RéfProduit], [Produits].[Unité], [Produits].[NomProduit], [Fournisseurs].[RéfFournisseur], [Fournisseurs].[NomFournisseur];
Mon problème est le suivant : L'état s'ouvre correctement et ouvre correctement le form Période de l'état
(que je me suis contenté d'importer). Lorsque j'ai introduit mes données dans l'état et que je clique sur le bouton aperçu, l'état m'envoie la boîte
de message me demandant d'introduire les données que j'ai introduites dans
le formulaire Période de l'état. Le message est : Formulaires!Période de l'état!Datedébut, 1 [Unknown] > > Je dois ensuite introduire la date de début Le message suivant est : Formulaires!Période de l'état!Datedébut, 3 [Unknown] > > Ici je dois introduire la date de fin, et non de début, comme stipulé dans
le titre.
J'ai essayé WHERE ((([Transactions inventaire].[DateTransaction])>=#Formulaires![Période
de l'état]!DateDébut# And ([Transactions inventaire].[DateTransaction])<=#Formulaires![Période de l'état]!DateFin#))
WHERE ((([Transactions inventaire].[DateTransaction])>=#" & Format(Formulaires![Période de l'état]!DateDébut, "mm/dd/yyyy") & "# And ([Transactions inventaire].[DateTransaction])<=#" & Format(Formulaires![Période de l'état]!DateFin, "mm/dd/yyyy") & "#))
mais je reçois toujours un message d'erreur de syntaxe.