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

Requete pour TOUTES les dates

4 réponses
Avatar
Jean-Michel
Bonjour,

J'ai une table avec un champ date et un champ euro.
J'aimerais faire une requete qui regroupe chaque date, et qu'il fasse
la somme des euros. -> ca, j'y arrive.
Par contre, j'aimerai egalement qu'il me fasse apparaitre les dates ou
il y a 0 euro.
Donc, mois je donne une date de debut et une date de fin : et
j'aimerai faire apparaitre TOUTES les dates entre ces deux dates (m=EAme
si il n'y a pas une date en question dans la table).

Merci d'avance.

4 réponses

Avatar
Fabien
Jean-Michel a écrit :
Bonjour,

J'ai une table avec un champ date et un champ euro.
J'aimerais faire une requete qui regroupe chaque date, et qu'il fasse
la somme des euros. -> ca, j'y arrive.
Par contre, j'aimerai egalement qu'il me fasse apparaitre les dates ou
il y a 0 euro.
Donc, mois je donne une date de debut et une date de fin : et
j'aimerai faire apparaitre TOUTES les dates entre ces deux dates (même
si il n'y a pas une date en question dans la table).

Merci d'avance.


Salut,
A moins de générer les dates qui ne sont pas dans ta table et stocker le
tout dans une table de travail, je vois pas d'autre solution.
dim madate as date

Dim mon_montant as double
Currentdb.execute "Delete * from Table_Travail"
for madateÚtedebut to datefin
Mon_montant=dlookup("[Montant","Larequete","[Ladate]=#" &
format(madate,"mm/dd/yyyy") & "#")
Currentdb.execute "Insert Into Table_travail (Montant,Ladate) values ("
& nz(Mon_Montant,0) & "," & Madate &");)
next Madate


A tester !
@+
Avatar
Jean-Michel
On 26 nov, 12:06, Fabien wrote:
Jean-Michel a écrit :> Bonjour,

> J'ai une table avec un champ date et un champ euro.
> J'aimerais faire une requete qui regroupe chaque date, et qu'il fasse
> la somme des euros. -> ca, j'y arrive.
> Par contre, j'aimerai egalement qu'il me fasse apparaitre les dates ou
> il y a 0 euro.
> Donc, mois je donne une date de debut et une date de fin : et
> j'aimerai faire apparaitre TOUTES les dates entre ces deux dates (mêm e
> si il n'y a pas une date en question dans la table).

> Merci d'avance.

Salut,
A moins de générer les dates qui ne sont pas dans ta table et stocker le
tout dans une table de travail, je vois pas d'autre solution.
dim madate as date

Dim mon_montant as double
Currentdb.execute "Delete * from Table_Travail"
for madateÚtedebut to datefin
        Mon_montant=dlookup("[Montant","Larequete","[Ladate]= #" &
format(madate,"mm/dd/yyyy") & "#")
        Currentdb.execute "Insert Into Table_travail (Montant,Lad ate) values ("
& nz(Mon_Montant,0) & "," & Madate &");)
next Madate

A tester !
@+



Bonjour,

Merci pour cette solution,
J'ai tester, mais je dois avoir un soucis de format car voici le code
que j'ai taper :

Dim madate As Date
CurrentDb.Execute "Delete * from Temp_Date"
For madate = Me.du To Me.au
CurrentDb.Execute "Insert Into Temp_Date (ladate) values (" &
madate & ")"
Next madate

Il rempli bien ma table, mais seulement avec des 30/12/1899
Quand je me met en mode debug, je vois bien les bonnes dates
apparaitre sur la variable madate

Merci d'avance
Avatar
Fabien
Jean-Michel a écrit :
On 26 nov, 12:06, Fabien wrote:
Jean-Michel a écrit :> Bonjour,

J'ai une table avec un champ date et un champ euro.
J'aimerais faire une requete qui regroupe chaque date, et qu'il fasse
la somme des euros. -> ca, j'y arrive.
Par contre, j'aimerai egalement qu'il me fasse apparaitre les dates ou
il y a 0 euro.
Donc, mois je donne une date de debut et une date de fin : et
j'aimerai faire apparaitre TOUTES les dates entre ces deux dates (même
si il n'y a pas une date en question dans la table).
Merci d'avance.


Salut,
A moins de générer les dates qui ne sont pas dans ta table et stocker le
tout dans une table de travail, je vois pas d'autre solution.
dim madate as date

Dim mon_montant as double
Currentdb.execute "Delete * from Table_Travail"
for madateÚtedebut to datefin
Mon_montant=dlookup("[Montant","Larequete","[Ladate]=#" &
format(madate,"mm/dd/yyyy") & "#")
Currentdb.execute "Insert Into Table_travail (Montant,Ladate) values ("
& nz(Mon_Montant,0) & "," & Madate &");)
next Madate

A tester !
@+



Bonjour,

Merci pour cette solution,
J'ai tester, mais je dois avoir un soucis de format car voici le code
que j'ai taper :

Dim madate As Date
CurrentDb.Execute "Delete * from Temp_Date"
For madate = Me.du To Me.au
CurrentDb.Execute "Insert Into Temp_Date (ladate) values (" &
madate & ")"
Next madate

Il rempli bien ma table, mais seulement avec des 30/12/1899
Quand je me met en mode debug, je vois bien les bonnes dates
apparaitre sur la variable madate

Merci d'avance




Ben comme ça :
Public Sub remplis(du As Date, au As Date)
Dim madate As Date
CurrentDb.Execute "Delete * from Temp_Date"
For madate = du To au
CurrentDb.Execute "Insert Into Temp_Date (ladate) values (#" &
madate & "#)"
Next madate

End Sub
Sub test()
remplis "1/1/2008", "31 / 12 / 2008"
End Sub
ça marche
@+
Avatar
Jean-Michel
On 26 nov, 13:26, Fabien wrote:
Jean-Michel a écrit :





> On 26 nov, 12:06, Fabien wrote:
>> Jean-Michel a écrit :> Bonjour,

>>> J'ai une table avec un champ date et un champ euro.
>>> J'aimerais faire une requete qui regroupe chaque date, et qu'il fasse
>>> la somme des euros. -> ca, j'y arrive.
>>> Par contre, j'aimerai egalement qu'il me fasse apparaitre les dates o u
>>> il y a 0 euro.
>>> Donc, mois je donne une date de debut et une date de fin : et
>>> j'aimerai faire apparaitre TOUTES les dates entre ces deux dates (m ême
>>> si il n'y a pas une date en question dans la table).
>>> Merci d'avance.
>> Salut,
>> A moins de générer les dates qui ne sont pas dans ta table et stoc ker le
>> tout dans une table de travail, je vois pas d'autre solution.
>> dim madate as date

>> Dim mon_montant as double
>> Currentdb.execute "Delete * from Table_Travail"
>> for madateÚtedebut to datefin
>>         Mon_montant=dlookup("[Montant","Larequete","[Ladate] =#" &
>> format(madate,"mm/dd/yyyy") & "#")
>>         Currentdb.execute "Insert Into Table_travail (Montant, Ladate) values ("
>> & nz(Mon_Montant,0) & "," & Madate &");)
>> next Madate

>> A tester !
>> @+

> Bonjour,

> Merci pour cette solution,
> J'ai tester, mais je dois avoir un soucis de format car voici le code
> que j'ai taper :

> Dim madate As Date
> CurrentDb.Execute "Delete * from Temp_Date"
> For madate = Me.du To Me.au
>         CurrentDb.Execute "Insert Into Temp_Date (ladate) value s (" &
> madate & ")"
> Next madate

> Il rempli bien ma table, mais seulement avec des 30/12/1899
> Quand je me met en mode debug, je vois bien les bonnes dates
> apparaitre sur la variable madate

> Merci d'avance

Ben comme ça :
Public Sub remplis(du As Date, au As Date)
Dim madate As Date
  CurrentDb.Execute "Delete * from Temp_Date"
  For madate = du To au
          CurrentDb.Execute "Insert Into Temp_Date (ladate) val ues (#" &
madate & "#)"
Next madate

End Sub
Sub test()
     remplis "1/1/2008", "31 / 12 / 2008"
End Sub
ça marche
@+- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Merci beaucoup :)
C'est super !