probleme de date avec cette fonction

Le
sleg
Bonjour ,


je reviens vers vous pour un petit probleme avec cette fonction :

Private Sub Form_Timer()
If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
' If Date > DMax("DateExec", "tblExecute") Then
If Time > #6:48:00 AM# Then
Me.TimerInterval = 60000

' MES ACTIONS

'sauver la date dans la table
CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
(#" & Date & "#);"
End If
End If
End Sub
_______________

en gros la fonction lance une ferif toutes les minutes et si elle
trouve la date du jour elle lance les process mais le probleme c que
cela fonctionne bien avec les jours supperieur ou egal a 10 mais pas
en dessous.

entre le 01 ==> 09 la date dans la table est pour le premier aout 2008
08/01/2008
entre le 10 ==>31 la date dans la table est ok au bon format
10/08/2008

une idée ?

merci de votre aide.

Bonne journée.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fabien
Le #16453841
sleg a écrit :
Bonjour ,


je reviens vers vous pour un petit probleme avec cette fonction :

Private Sub Form_Timer()
If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
' If Date > DMax("DateExec", "tblExecute") Then
If Time > #6:48:00 AM# Then
Me.TimerInterval = 60000

' MES ACTIONS

'sauver la date dans la table
CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
(#" & Date & "#);"
End If
End If
End Sub
_______________

en gros la fonction lance une ferif toutes les minutes et si elle
trouve la date du jour elle lance les process mais le probleme c que
cela fonctionne bien avec les jours supperieur ou egal a 10 mais pas
en dessous.

entre le 01 ==> 09 la date dans la table est pour le premier aout 2008
08/01/2008
entre le 10 ==>31 la date dans la table est ok au bon format
10/08/2008

une idée ?

merci de votre aide.

Bonne journée.


Salut,
Le soucis c'est le format des dates. En VBA on travail au format US donc
yyyymmdd.
Par sécurité
if format(Date,"yyyymmdd") >format( Nz(DMax("DateExec", "tblExecute"),
0),"yyyymmdd") Then
> ' If Date > DMax("DateExec", "tblExecute") Then
> If Time > #6:48:00 AM# Then
> Me.TimerInterval = 60000
>
> ' MES ACTIONS
>
> 'sauver la date dans la table
> CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
> (#" & Date & "#);"
> End If
> End If
> End Sub
Au moins on est sûr du format et donc du test ;-)
@+
sleg
Le #16454061
Ok merci mais le format date dans la table tblExecute est mmddyyyy ?
curieux non de plus j'ai une information apr minute a la palce de 1
apr jour est ce normal

en gros au debut je voulais juste que les action se lance a 07h00, est
ce la bonne solution ?.

Bonne journée.


On 1 août, 08:22, Fabien
sleg a écrit :



> Bonjour ,

> je reviens vers vous pour un petit probleme avec cette fonction :

> Private Sub Form_Timer()
> If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
> '  If Date > DMax("DateExec", "tblExecute") Then
>         If Time > #6:48:00 AM# Then
>         Me.TimerInterval = 60000

> ' MES ACTIONS

>         'sauver la date dans la table
>         CurrentDb.Execute "Insert Into tblExecute (DateExec) Va lues
> (#" & Date & "#);"
>         End If
>     End If
> End Sub
> _______________

> en gros la fonction lance une ferif toutes les minutes et si elle
> trouve la date du jour elle lance les process mais le probleme c que
> cela fonctionne bien avec les jours supperieur ou egal a  10 mais pas
> en dessous.

> entre le 01 ==> 09 la date dans la table est pour le premier aout 2 008
> 08/01/2008
> entre le 10 ==>31 la date dans la table est ok au bon format
> 10/08/2008

> une idée ?

> merci de votre aide.

> Bonne journée.

Salut,
Le soucis c'est le format des dates. En VBA on travail au format US donc
yyyymmdd.
Par sécurité
if format(Date,"yyyymmdd") >format( Nz(DMax("DateExec", "tblExecute"),
0),"yyyymmdd") Then
 > '  If Date > DMax("DateExec", "tblExecute") Then
 >         If Time > #6:48:00 AM# Then
 >         Me.TimerInterval = 60000
 >
 > ' MES ACTIONS
 >
 >         'sauver la date dans la table
 >         CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
 > (#" & Date & "#);"
 >         End If
 >     End If
 > End Sub
Au moins on est sûr du format et donc du test ;-)
@+- Masquer le texte des messages précédents -

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


Fabien
Le #16454151
sleg a écrit :
Ok merci mais le format date dans la table tblExecute est mmddyyyy ?
curieux non de plus j'ai une information apr minute a la palce de 1
apr jour est ce normal

en gros au debut je voulais juste que les action se lance a 07h00, est
ce la bonne solution ?.

Bonne journée.


On 1 août, 08:22, Fabien
sleg a écrit :



Bonjour ,
je reviens vers vous pour un petit probleme avec cette fonction :
Private Sub Form_Timer()
If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
' If Date > DMax("DateExec", "tblExecute") Then
If Time > #6:48:00 AM# Then
Me.TimerInterval = 60000
' MES ACTIONS
'sauver la date dans la table
CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
(#" & Date & "#);"
End If
End If
End Sub
_______________
en gros la fonction lance une ferif toutes les minutes et si elle
trouve la date du jour elle lance les process mais le probleme c que
cela fonctionne bien avec les jours supperieur ou egal a 10 mais pas
en dessous.
entre le 01 ==> 09 la date dans la table est pour le premier aout 2008
08/01/2008
entre le 10 ==>31 la date dans la table est ok au bon format
10/08/2008
une idée ?
merci de votre aide.
Bonne journée.


Salut,
Le soucis c'est le format des dates. En VBA on travail au format US donc
yyyymmdd.
Par sécurité
if format(Date,"yyyymmdd") >format( Nz(DMax("DateExec", "tblExecute"),
0),"yyyymmdd") Then
> ' If Date > DMax("DateExec", "tblExecute") Then
> If Time > #6:48:00 AM# Then
> Me.TimerInterval = 60000
>
> ' MES ACTIONS
>
> 'sauver la date dans la table
> CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
> (#" & Date & "#);"
> End If
> End If
> End Sub
Au moins on est sûr du format et donc du test ;-)
@+- Masquer le texte des messages précédents -

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





On y est ! L'affichage des dates dépend de ton paramétrage des 'options
régionales et linguistiques' de windows. Tu es en France et le format
d'affichage d'une date c'est JJMMAAAA donc idem pour un champ de type
date. Mais VBA et SQL reste farouchement US donc les tests sur les dates
sont au format YYYYMMDD.
@+
sleg
Le #16454351
ok mais il y a un truc que je ne comprends pas pourquoi dans e cas la
date dans la table est au formet MM DD YYYY ? a la palce de YYYY mm
DD ?

désolé mais j'ai la comprenette difficile ce matin ..;-)


On 1 août, 09:27, Fabien
sleg a écrit :



> Ok merci mais le format date dans la table tblExecute est mmddyyyy ?
> curieux non de plus j'ai une information apr minute a la palce de 1
> apr jour est ce normal

> en gros au debut je voulais juste que les action se lance a 07h00, est
> ce la bonne solution ?.

> Bonne journée.

> On 1 août, 08:22, Fabien >> sleg a écrit :

>>> Bonjour ,
>>> je reviens vers vous pour un petit probleme avec cette fonction :
>>> Private Sub Form_Timer()
>>> If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
>>> '  If Date > DMax("DateExec", "tblExecute") Then
>>>         If Time > #6:48:00 AM# Then
>>>         Me.TimerInterval = 60000
>>> ' MES ACTIONS
>>>         'sauver la date dans la table
>>>         CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
>>> (#" & Date & "#);"
>>>         End If
>>>     End If
>>> End Sub
>>> _______________
>>> en gros la fonction lance une ferif toutes les minutes et si elle
>>> trouve la date du jour elle lance les process mais le probleme c que
>>> cela fonctionne bien avec les jours supperieur ou egal a  10 mais p as
>>> en dessous.
>>> entre le 01 ==> 09 la date dans la table est pour le premier aout 2008
>>> 08/01/2008
>>> entre le 10 ==>31 la date dans la table est ok au bon format
>>> 10/08/2008
>>> une idée ?
>>> merci de votre aide.
>>> Bonne journée.
>> Salut,
>> Le soucis c'est le format des dates. En VBA on travail au format US do nc
>> yyyymmdd.
>> Par sécurité
>> if format(Date,"yyyymmdd") >format( Nz(DMax("DateExec", "tblExecute"),
>> 0),"yyyymmdd") Then
>>  > '  If Date > DMax("DateExec", "tblExecute") Then
>>  >         If Time > #6:48:00 AM# Then
>>  >         Me.TimerInterval = 60000

>>  > ' MES ACTIONS

>>  >         'sauver la date dans la table
>>  >         CurrentDb.Execute "Insert Into tblExecute (DateEx ec) Values
>>  > (#" & Date & "#);"
>>  >         End If
>>  >     End If
>>  > End Sub
>> Au moins on est sûr du format et donc du test ;-)
>> @+- Masquer le texte des messages précédents -

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

On y est ! L'affichage des dates dépend de ton paramétrage des 'optio ns
régionales et linguistiques' de windows. Tu es en France et le format
d'affichage d'une date c'est JJMMAAAA donc idem pour un champ de type
date. Mais VBA et SQL reste farouchement US donc les tests sur les dates
sont au format YYYYMMDD.
@+- Masquer le texte des messages précédents -

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


Fabien
Le #16454441
sleg a écrit :
ok mais il y a un truc que je ne comprends pas pourquoi dans e cas la
date dans la table est au formet MM DD YYYY ? a la palce de YYYY mm
DD ?

désolé mais j'ai la comprenette difficile ce matin ..;-)


On 1 août, 09:27, Fabien
sleg a écrit :



Ok merci mais le format date dans la table tblExecute est mmddyyyy ?
curieux non de plus j'ai une information apr minute a la palce de 1
apr jour est ce normal
en gros au debut je voulais juste que les action se lance a 07h00, est
ce la bonne solution ?.
Bonne journée.
On 1 août, 08:22, Fabien
sleg a écrit :
Bonjour ,
je reviens vers vous pour un petit probleme avec cette fonction :
Private Sub Form_Timer()
If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
' If Date > DMax("DateExec", "tblExecute") Then
If Time > #6:48:00 AM# Then
Me.TimerInterval = 60000
' MES ACTIONS
'sauver la date dans la table
CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
(#" & Date & "#);"
End If
End If
End Sub
_______________
en gros la fonction lance une ferif toutes les minutes et si elle
trouve la date du jour elle lance les process mais le probleme c que
cela fonctionne bien avec les jours supperieur ou egal a 10 mais pas
en dessous.
entre le 01 ==> 09 la date dans la table est pour le premier aout 2008
08/01/2008
entre le 10 ==>31 la date dans la table est ok au bon format
10/08/2008
une idée ?
merci de votre aide.
Bonne journée.


Salut,
Le soucis c'est le format des dates. En VBA on travail au format US donc
yyyymmdd.
Par sécurité
if format(Date,"yyyymmdd") >format( Nz(DMax("DateExec", "tblExecute"),
0),"yyyymmdd") Then
> ' If Date > DMax("DateExec", "tblExecute") Then
> If Time > #6:48:00 AM# Then
> Me.TimerInterval = 60000
> ' MES ACTIONS
> 'sauver la date dans la table
> CurrentDb.Execute "Insert Into tblExecute (DateExec) Values
> (#" & Date & "#);"
> End If
> End If
> End Sub
Au moins on est sûr du format et donc du test ;-)
@+- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -




On y est ! L'affichage des dates dépend de ton paramétrage des 'options
régionales et linguistiques' de windows. Tu es en France et le format
d'affichage d'une date c'est JJMMAAAA donc idem pour un champ de type
date. Mais VBA et SQL reste farouchement US donc les tests sur les dates
sont au format YYYYMMDD.
@+- Masquer le texte des messages précédents -

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





C'est parce que Access est mâââgique, il stocke les données sous un
format qui lui est pratique et te les montre sous un autre qui lui est
pratique pour toi ;-)
Le tout étant de le savoir.;-)
@+
sleg
Le #16454881
snifff ;-)

merci pour tes infos

bonne journée.


On 1 août, 10:12, Fabien
sleg a écrit :



> ok mais il y a un truc que je ne comprends pas pourquoi dans e cas la
> date dans la table est au formet MM DD YYYY ? a la palce de YYYY mm
> DD ?

> désolé mais j'ai la comprenette difficile ce matin ..;-)

> On 1 août, 09:27, Fabien >> sleg a écrit :

>>> Ok merci mais le format date dans la table tblExecute est mmddyyyy ?
>>> curieux non de plus j'ai une information apr minute a la palce de 1
>>> apr jour est ce normal
>>> en gros au debut je voulais juste que les action se lance a 07h00, es t
>>> ce la bonne solution ?.
>>> Bonne journée.
>>> On 1 août, 08:22, Fabien >>>> sleg a écrit :
>>>>> Bonjour ,
>>>>> je reviens vers vous pour un petit probleme avec cette fonction :
>>>>> Private Sub Form_Timer()
>>>>> If Date > Nz(DMax("DateExec", "tblExecute"), 0) Then
>>>>> '  If Date > DMax("DateExec", "tblExecute") Then
>>>>>         If Time > #6:48:00 AM# Then
>>>>>         Me.TimerInterval = 60000
>>>>> ' MES ACTIONS
>>>>>         'sauver la date dans la table
>>>>>         CurrentDb.Execute "Insert Into tblExecute (DateExec ) Values
>>>>> (#" & Date & "#);"
>>>>>         End If
>>>>>     End If
>>>>> End Sub
>>>>> _______________
>>>>> en gros la fonction lance une ferif toutes les minutes et si elle
>>>>> trouve la date du jour elle lance les process mais le probleme c qu e
>>>>> cela fonctionne bien avec les jours supperieur ou egal a  10 mais pas
>>>>> en dessous.
>>>>> entre le 01 ==> 09 la date dans la table est pour le premier ao ut 2008
>>>>> 08/01/2008
>>>>> entre le 10 ==>31 la date dans la table est ok au bon format
>>>>> 10/08/2008
>>>>> une idée ?
>>>>> merci de votre aide.
>>>>> Bonne journée.
>>>> Salut,
>>>> Le soucis c'est le format des dates. En VBA on travail au format US donc
>>>> yyyymmdd.
>>>> Par sécurité
>>>> if format(Date,"yyyymmdd") >format( Nz(DMax("DateExec", "tblExecute" ),
>>>> 0),"yyyymmdd") Then
>>>>  > '  If Date > DMax("DateExec", "tblExecute") Then
>>>>  >         If Time > #6:48:00 AM# Then
>>>>  >         Me.TimerInterval = 60000
>>>>  > ' MES ACTIONS
>>>>  >         'sauver la date dans la table
>>>>  >         CurrentDb.Execute "Insert Into tblExecute (Date Exec) Values
>>>>  > (#" & Date & "#);"
>>>>  >         End If
>>>>  >     End If
>>>>  > End Sub
>>>> Au moins on est sûr du format et donc du test ;-)
>>>> @+- Masquer le texte des messages précédents -
>>>> - Afficher le texte des messages précédents -
>> On y est ! L'affichage des dates dépend de ton paramétrage des 'op tions
>> régionales et linguistiques' de windows. Tu es en France et le forma t
>> d'affichage d'une date c'est JJMMAAAA donc idem pour un champ de type
>> date. Mais VBA et SQL reste farouchement US donc les tests sur les dat es
>> sont au format YYYYMMDD.
>> @+- Masquer le texte des messages précédents -

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

C'est parce que Access est mâââgique, il stocke les données sous un
format qui lui est pratique et te les montre sous un autre qui lui est
pratique pour toi ;-)
Le tout étant de le savoir.;-)
@+- Masquer le texte des messages précédents -

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


Publicité
Poster une réponse
Anonyme