déjà je pense qu'il y a un problème dans: [Formulaires]![F_parametres]![FrmDebut]![DateJour] si [F_parametres] est le formulaire et [FrmDebut] est un champ, [DateJour] n'a rien à faire dans l'expression.
déjà je pense qu'il y a un problème dans: [Formulaires]![F_parametres]![FrmDebut]![DateJour] si [F_parametres] est le formulaire et [FrmDebut] est un champ, [DateJour] n'a rien à faire dans l'expression.
il faut enlever les paramètres de la requête et dans le formulaire F_parametres, sur l'évènement qui charge la requête (clic de bouton en général) mettre ce code:
cela va modifier le SQL de la requête en prenant en compte la saisie des dates
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Dim stSql As String Dim qdf As QueryDef stSql = "TRANSFORM Count(T_Suivi.Motif) AS CompteDeMotif " _ & "SELECT T_Femmes.N° " _ & "FROM T_Femmes LEFT JOIN T_Suivi ON T_Femmes.N° = T_Suivi.N° " _ & "WHERE T_Suivi.DateJour between " & Me![FrmDebut] & " and " & Me![FrmFin] & " " _ & "GROUP BY T_Femmes.N° " _ & "PIVOT T_Suivi.Motif In (""Agression"",""Agression sexuelle"",""Autre"",""Difficultés"",""Harcèlement travail"",""Inceste"",""Planning"",""Violences anciennes"",""Violences conjugales"",""Violences familiales"");" Set qdf = CurrentDb.QueryDefs("R_nbFemmeMotif00") qdf.SQL = stSql
il me met un message d'erreur, j'ai copié le code, modifié mon formulaire en ajoutant le bouton ok, et ...ça ne marche pas.
Est-ce que, pour simplifier tout ça, je ne pourrais pas créer une table, à partir du bouton ok, filtrant les enregistrements par date, puis ensuite travailler sur cette table directement.
Ce qui implique, de la vider après chaque utilisation...ou de la remettre avec TOUS les enregistrements ?
Donc ce serait une macro à l'ouverture de l'appli, une macro pour ok
Mais si dans la journée elle veut une plage de date différente....
Je crois que ce n'est pas encore très clair pour moi.
Qu'en pensez-vous ?
Je n'ai pas encore créé les formulaire, hormis le formulaire de saisie.
Les états sont presque tous créés.
J'ai peur en créant cette table de stats de devoir tout recommencer !
Une idée ?
bonjour
comme on ne peut pas le deviner, il faut indiquer le libellé du message d'erreur et quelle instruction la provoque, pour savoir ce qui convient de corriger ...il me met un message d'erreur,
et merci de poster tout le code pour voir si tout est conforme.
ma proposition devrait résoudre le problème, il suffi de faire ce que je préconise. Mais comme je n'ai pas la main sur tout, il est possible que je ne vois pas tout ce qui cloche, c'est pour cela qu'il est important d'indiquer clairement ce qui ne fonctionne pas en postant les messages d'erreur, les copies d'écran, le code à corriger ...Je n'ai pas encore créé les formulaire, hormis le formulaire de saisie.
Les états sont presque tous créés.
J'ai peur en créant cette table de stats de devoir tout recommencer !
Une idée ?
bonjour,
mince les pièces jointes ne se sont pas affichées, je les mets maintenant
désolée
il manquait les # pour les variables dates, et le formatage au format date US :
désolé pour l'oubli ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part & "WHERE T_Suivi.DateJour between #" & Cdate(Format(Me![FrmDebut],"mm/dd/yyyy")) & "# and " & Cdate(Format(Me![FrmFin],"mm/dd/yyyy")) & "# " _
il faut que je vérifie les paramètres Windows de mon pc, je travaille sur un clavier suisse romand et j'ai déjà eu des soucis avec les formats date dans access
je vous tiens au courant dès demain,
merci du temps que vous m'accordez, à charge de revanche
inutile, le format date dans VBA est toujours au format US, c'est pour cela que j'ai mis ce format ...je travaille sur un clavier suisse romand et j'ai déjà eu des soucis avec les formats date dans access
je vous tiens au courant dès demain
De nouveau un message d'erreur.
voilà les écrans :
bonjour,
la partie & "GROUP BY T_Femmes.N° " _ devrait être à la ligne suivante: le souligné "_" est un caractère de continuation et est toujours à la fin d'une ligne, il faut donc respecter la syntaxe et ne pas en mettre 2 sur la même ligne ...
encore une erreur...je suis vraiment mauvaise sur ce coup là !
merci de votre patience
j'ai modifié les paramètres de date, le séparateur étant le point et non la barre, et j'ai aussi mis le jour avant le mois.
j'ai essayé avec l'année sur 2 chiffres mais j'ai la même chose
et en remplaçant les . par des /, ça donne quoi ?
ben j'ai essayé et ça veut pas le faire !
le format Date US
J'évoquais votre saisie dans les textbox remplacer les . par des / !
Code : Sélectionner tout - Visualiser dans une fenêtre à part Cdate(Format(Me![FrmDebut],"mm/dd/yyyy")) & "# and " & Cdate(Format(Me![FrmFin],"mm/dd/yyyy"))
j'ai tenté dans mon formulaire les formats suivants :
01.31.2019
01.31.19
31.01.2019
31.01.19
puis
01/31/2019
01/31/19
31/01/19
31/01/2019
que puis-je faire d'autre ?
c'est que si dans le formulaire, je lance une requête paramétrée pour créer une table,
les dates fonctionnent !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
quels sont les formats date dans les paramètres régionaux de votre windows ?
et j'ai un clavier suisse romand !
Euh... il manque un # dans votre WHERE
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part & "WHERE T_Suivi.DateJour BETWEEN #" & Format(Me![FrmDebut],"mm.dd.yy") & "# AND #" & Format(Me![FrmFin],"mm.dd.yy") & "#" _
Code : Sélectionner tout - Visualiser dans une fenêtre à part & "WHERE T_Suivi.DateJour BETWEEN Format(Me![FrmDebut], "\#mm\.dd\.yy\#") AND Format(Me![FrmFin], "\#mm\.dd\.yy\#") " _
ça plante encore ! et j'ai aussi essayé avec les \...
Partager