Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access
Access Forum d'entraide sur Microsoft Access. Avant de poster -> La F.A.Q Access
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/12/2011, 12h58   #1
Invité de passage
 
Étudiant
Inscription : décembre 2011
Messages : 16
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2011
Messages : 16
Points : 2
Points : 2
Par défaut Comparaison date() avec enregistrement d'une table.

Bonjour!

J'ai beau cherché sur le site ou sur google, je ne parviens pas à trouver des posts qui puissent m'aider.

Dans une macro, je cherche à comparer la date et l'heure actuelle à une date et une heure enregistrée dans une table. Le but est d'arrêter la macro si la date et heure actuelle est supérieure ou égale à celle enregistrée dans la table.

j'ai essayé par cette écriture:
Code :
[course]![date_et_heure]<=Date()
mais cela ne marche pas

En fait j'ai un problème pour utiliser les données d'une table dans une macro, instinctivement je mentionne la table via le générateur, mais cela m'amène toujours au message type "L'objet ne contient pas d'objet d'automation "Nom de la table".

(Je ne connais pas le langage SQL, je dois me contenter de l'interface d'Access)

Merci d'avoir lu mon post et à ceux qui pourrons m'aider!
Bonne journée!
charlhub est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 21h33   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Regarde si tu peux utiliser la fonction
Code :
DFirst("date_et_heure";"course") <= date()
A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 15h44   #3
Invité de passage
 
Étudiant
Inscription : décembre 2011
Messages : 16
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2011
Messages : 16
Points : 2
Points : 2
Merci ta réponse m'a amené sur la bonne voie:
Code :
RechDom("[date_et_heure]";"course";"[nom_course]=Formulaires![saisie_pari]![nom_de_course]")<Date()+Temps()
charlhub est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 16h13   #4
Invité de passage
 
Étudiant
Inscription : décembre 2011
Messages : 16
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2011
Messages : 16
Points : 2
Points : 2
Par contre j'aimerais modifié la condition en:

"date_et_heure" - 10 minutes < date () + temps

Mais quand j'utilise

Code :
RechDom("[date_et_heure]";"course";"[nom_course]=Formulaires![saisie_pari]![nom_de_course]")-Minute(10)<Date()+Temps()
Le -Minute(10) ne change rien, c'est comme s'il n'existait pas

Quelqu'un aurait-il le moyen de soustraire 10 mn à la concaténation : "date_et_heure" qui est en fait Date() + Temps() c'est à dire ##/##/#### ##:##
charlhub est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 20h39   #5
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Minute te donne les minutes contenues dans une heure (ex pour 12h15 va minute te donner 15).

Pour retirer ou ajouter du temps à une date tu peux utiliser DateAdd().

Dans ton cas cela devrait être
Code :
DateAdd("n"; -10; [tonChampDateHeure])
. qui retire 10 minutes au cahmps tonChampDateHeure.

Note : Access va traduire DateAdd en français automatiquement.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/12/2011, 16h26   #6
Invité de passage
 
Étudiant
Inscription : décembre 2011
Messages : 16
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2011
Messages : 16
Points : 2
Points : 2
Ok, mais

quand je fais:

Code :
 AjDate("n";-10;"[course]![date_et_heure]")<Date()+Temps()
ou
Code :
AjDate("n";-10;"[date_et_heure]")<Date()+Temps()
=> "Incompatibilité de type"


Code :
 AjDate("n";-10;[course]![date_et_heure])<Date()+Temps()
ou
Code :
AjDate("n";-10;[date_et_heure])<Date()+Temps()
=> "L'objet ne contient pas d'objet automation"course"" ou "date_et_heure"


et Access ne reconnait pas :
Code :
AjDate("n";-10;"course";[date_et_heure])<Date()+Temps()
ou
Code :
AjDate("n";-10;"course";"[date_et_heure]")<Date()+Temps()
Bref, j'ai presque tout essayé, et je suis bloqué
Ou me suis-je trompé?

(Je rappel que je suis sensé n'utiliser que l'interface d'Access et ne pas communiquer en SQL, je ne peux donc pas utiliser de variable tampon dans une macro :s)
charlhub est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/12/2011, 18h43   #7
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonsoir,

Sous réserve d'erreur de copier/coller, tu dois pouvoir faire comme ça :
Code :
RechDom("[date_et_heure]";"course";"[nom_course]=Formulaires![saisie_pari]![nom_de_course]")-TimeSerial(0;10;0) < Date()+Temps()
ou comme ça :
Code :
RechDom("[date_et_heure]";"course";"[nom_course]=Formulaires![saisie_pari]![nom_de_course]")-#00:10:00# < Date()+Temps()
ou comme indiqué par marot_r :
Code :
DateAdd("n"; -10; RechDom("[date_et_heure]";"course";"[nom_course]=Formulaires![saisie_pari]![nom_de_course]")) < Date()+Temps()
Tu dois aussi pouvoir remplacer Date() + Temps() par Maintenant().

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/12/2011, 19h25   #8
Invité de passage
 
Étudiant
Inscription : décembre 2011
Messages : 16
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2011
Messages : 16
Points : 2
Points : 2
Merci beaucoup!

J'ai donc utilisé la dernière:
Code :
DateAdd("n"; -10; RechDom("[date_et_heure]";"course";"[nom_course]=Formulaires![saisie_pari]![nom_de_course]")) < Date()+Temps()
Bon Noël !!
charlhub est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h46.


 
 
 
 
Partenaires

Hébergement Web