Format de date pour dialoguer Excel->Access

Bonjour,

J'ai un soucis que je n'arrive pas a résoudre. Je comprends pourquoi ca bloque mais je n'arrive pas a faire la modification adéquate.

Merci par avance de votre aide.

Alors, mon problème se pose sur une requete vba qui va chercher a remonter les bonnes lignes d'une table dans access nommé TgrilleC, en filtrant par une date sur un champs dateRdv qui est une date au type francais ( jj/mm/aaaa).

il doit remonter les lignes de cette table pour les champs qui ont dateRdv = datecom (datecom est une variable qui prends la valeur d'une cellule dont l'utilisateur choisie la date qu'il souhaite. Tout les dates sont au format francais)

Voici la requete dans mon code actuellement :

il fonctionne très bien pour les dates ou les nombre qui indique les jours est supérieur à 12.

(je suppose donc que c est un soucis de format de date (anglais vs francais) mais je bloque depuis plusieurs jours

requete = "SELECT DISTINCT TgrilleC.dateRdv, TgrilleC.enveloppe, TgrilleC.classe, TgrilleC.nom FROM TgrilleC " & _
"where TgrilleC.enveloppe = 'oui' AND TgrilleC.dateRdv = format (#" & datecom & "#,'dd/mm/yyyy') ;"
RS1.Open requete
k = 8
'--- dérouler le recordset
While Not (RS1.EOF)
                Sheets(feuilleactive).Cells(1 + k, 10) = RS1.Fields("classe")
                Sheets(feuilleactive).Cells(1 + k, 11) = RS1.Fields("nom")
                Sheets(feuilleactive).Cells(1 + k, 9) = RS1.Fields("dateRdv")
                Sheets(feuilleactive).Cells(1 + k, 27) = RS1.Fields("nom")
                Sheets(feuilleactive).Cells(1 + k, 27) = RS1.Fields("enveloppe")
    RS1.MoveNext
    k = k + 1
Wend
RS1.Close

j'ai essayé ce que j'ai trouvé sur le sujet sans reussite, ci dessous quelques tentatives échouées :

1)
Format (#" & Day([datecom]) & "/" & Month([datecom]) & "/& Year ([datecom])&)
2)
TransDate = "#" & DatePart("m", DateTr) & "/" & DatePart("d", DateTr) & "/" & DatePart("yyyy", DateTr) & "#"
3)
AND TgrilleC.dateRdv > CDATE('" & datecom & "');"  (interprete la valeur en parametre en date)
...

je ne peux fournir un fichier car c'est sur une requete entre excel et access, mais je peux apporter des précisions si je ne suis pas très clair

bonne journée

alfidx

Bonjour,

Est-ce que tu reçois un n° de série ?

Essaie dat1=Cdate(ta_date)

Une chaine ?

Le plus sûr est de découper la date reçue avec left(), mid() et right() ou split() et de la refabriquer avec

dat1= DateSerial(aaaa, mm, jj)

Tu devrais écrire tes résultats dans une variable tableau et tout coller d'un coup. Tu iras 100 fois plus vite.

eric

PS : pas de doublons stp

Bonjour eriic, merci de ta réponse.

J'ai essayé mais ca ne marche pas.

qu entends tu par :

Est-ce que tu reçois un n° de série ?

Je ne vois pas comment je peux découper la date recu....

datecom = Sheets(feuilleactive).Range("A1")
' jai essayé ces deux lignes dessous une ligne active a la fois mais ca ne marche pas

'datecom = DateSerial(aaaa, mm, jj) ' cela ne marche pas
'datecom = CDate(datecom) ' cela ne marche pas

requete = "SELECT DISTINCT TgrilleCOPCVM.dateC,TgrilleCOPCVM.enveloppe,TgrilleCOPCVM.classe, TgrilleCOPCVM.nom FROM TgrilleC " & _
"where TgrilleC.enveloppe = 'oui' AND TgrilleCOPCVM.dateC = format (#" & datecom & "#,'dd/mm/yyyy') ;"

RS1.Open requete

ca ne marche juste pas si le nombre de jour du mois est inférieur ou egal a 12

si datecom = 05/05/2015 ne marche pas

si datecom= 13/05/2015 ca marche bien

C'est bon j'ai trouvé !

il fallait invertir DD/MM/YYYY en MM/DD/YYYY

access parle anglais

Rechercher des sujets similaires à "format date dialoguer access"