Pipo, je commance à comprendre :
1- créer la requete en mode création
2 - l'afficher en mode SQL
3 - et recopier ce mode SQL dans le VBA avec des corrections éventuelles
C 'est cela ?
Version imprimable
Pipo, je commance à comprendre :
1- créer la requete en mode création
2 - l'afficher en mode SQL
3 - et recopier ce mode SQL dans le VBA avec des corrections éventuelles
C 'est cela ?
Oui, je parle de cette vue-ci (MS Access 2003)
(Voir impression d'ecran dans MS Word)
Oops, je crois que j'ai passé une sychronisation...
Ton message de 14h02 est le bon, c'est précisément ce que je veux dire.
Salut les 2,
La question qu'il faut se poser, est-ce que la requête donnait des résultats quand on n'utilisait que la date comme paramètre. Au tout début du sujet.
Si non : Il y a des problèmes ou la date choisie comme valeur ne donne simplement pas de valeurs.
Si oui : Introduire les changements et choisir le cas de Journée_Complète qui est son équivalent (avec la même date que précédemment).
Et vérifier les autres cas au dur et à mesure.
@+
j'ai trouve le problème.
Il venait du format date dans le textebox "Texte_journee"
Je rentrais la date sous le format jj/mm/aaaa alors qu'il fallait sous le format
mm/jj/aaaa.
Comment faire que je puisse referencer la date sous le format jj/mm/aaaa
Mettre
j'imagine et là où tu as Texte_journee.Code:VJournee = Format(CDate(Texte_journee);"mm:dd:yyyy") + TimeSerial(5, 0, 0)
J'ai dèjà esssayé cette expression mais cela me donne un message d'erreur du type :
Citation:
Erreur d'exécution 13
incompatibilité de type
Plutôt :
alors pour le format d'une date.Code:VJournee = Format(CDate(Texte_journee);"mm/dd/yyyy") + TimeSerial(5, 0, 0)
@+
j'avais également testé ce format "" mais j'ai toujours le même message :Citation:
dd/mm/yyy
Ce qui m'embete avec le format anglo saxon mm/dd/yyy, c'est que la variableVJourneeFin = (CDate(Texte_journee) + 1) + TimeSerial(5, 0, 0) me revoie au mois suivant:Citation:
Erreur d'exécution 13
incompatibilité de type
Exemple: si je tape dans le Texte_box "(Texte_journee)" la journée du 05 aout 2013 en mode anglo saxon 08/05/2013, la variable VJourneeFin va essayer d'afficher les données du 05 aout 2013 au 05 septembre 2013...
Là, je suis :koi:.
J'utilise ce format tous les jours et je viens de le tester dans un contexte similaire au tien. Ca renvoyait bien des résultats.
Revenons en arrière sur la requête :
1 - Enlève toutes les paramètres de ta requête pour vérifier si ça fonctionne :strSQLWHERE - strSQLGROUPBY - strSQLHAVING - strSQLORDERBY.
2 - Quand ça marche, tu les remets un à un pour arriver à un cas où ça fonctionne.
3 - Je modifierais la condition des dates en mettant d'abord comme paramètre une date exacte au lieu d'une période avec between :
avec une date susceptible de donner un résultat. Là tu cherches l'utilisation correcte de Format.Code:strSQLWHERE = "WHERE (((dbo_vwItemEventHistory.EventTime) = #" & VJourneeDebut & "#"
4 - Si tu as peur dans l'utilisation du format Anglo-saxon, tu peux utiliser les fonctions dates : Ex : DateAdd pour décaler une date.
@+