Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
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 08/02/2011, 19h30   #1
Invité régulier
 
Inscription : janvier 2006
Messages : 27
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 27
Points : 8
Points : 8
Par défaut Calendrier (problème de date)

Bonjour,

Je viens de découvrir la base calendriermedv3.1 de D. Hulo, elle est super et correspond à mon projet, sauf qu'il y a un petit problème, ce pourquoi je fais appel à vous.

La date du form rendez vous est correct, sauf que lorsqu'elle est valider, cette date est incorrect dans la table, et bien évidemment, elle n'apparait pas dans le formulaire calendrier.

Cette base est sous access 2000 alors que je suis en access 2007....

Merci de votre aide
sameros est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 21h21   #2
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 205
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 205
Points : 5 258
Points : 5 258
Bonsoir,

ça me semble être 1 problème de format de date :

Par exemple, si tu es canadien, dans les paramètres régionaux de windows (région et langue - format de date - sous Win 7)

Tu dois avoir un format de date abrégé du style "yyyy-mm-dd"

Dans ce cas, il faut remplacer dans tout le projet, dans tous les modules VBA du projet, les formats du style :

"mm-dd-yy" ou "dd/mm/yyyy" ...

Par "yyyy-mm-dd"

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 21h51   #3
Invité régulier
 
Inscription : janvier 2006
Messages : 27
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 27
Points : 8
Points : 8
Merci à toi,

J'ai changé mes paramètres de date dans win 7 et tout est beau, cependant, si j'installe cette base sur un autre ordi, avec une autre version OS, le problème va t-il revenir ?

Il n'y aurais pas un code VBA qui pourrais cette tâche, soit changer ce paramètre dans Windows en ouvrant cette base et revenir à la configuration initiale à la fermeture ?

Dernière petite question, à quoi sert ce code :

Code :
1
2
3
4
5
6
7
8
 
' Les fonctions du module.
 
Public Function FormatDateUS(laDate As Date) As String
' Formate la date passée en argument en date US.
 
FormatDateUS = Chr(35) & Format(laDate, "m-d-yy hh:nn:ss") & Chr(35)  ' Date au format us
End Function
sameros est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 22h10   #4
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 205
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 205
Points : 5 258
Points : 5 258
Citation:
J'ai changé mes paramètres de date dans win 7 et tout est beau, cependant, si j'installe cette base sur un autre ordi, avec une autre version OS, le problème va t-il revenir ?
Si dans le nouvel OS et dans ses paramètres régionaux le format de date est différent, alors oui le problème risque de se reproduire.
(Mais bon l' appli fonctionnera quand même au Canada francophone )

Citation:
Il n'y aurais pas un code VBA qui pourrais cette tâche, soit changer ce paramètre dans Windows en ouvrant cette base et revenir à la configuration initiale à la fermeture ?
J'avoue ne pas connaître

Citation:
Dernière petite question, à quoi sert ce code :

Code :
1
2
3
4
5
6
7
8
9
10
Code :
 
 
' Les fonctions du module.
 
Public Function FormatDateUS(laDate As Date) As String
' Formate la date passée en argument en date US.
 
FormatDateUS = Chr(35) & Format(laDate, "m-d-yy hh:nn:ss") & Chr(35)  ' Date au format us
End Function
Le moteur jet de la base de donnée Access ne reconnait que les format us.

En dehors du QBE, quand tu veux transmettre un paramètre de type date dans le sql d'une requête, tu es obligé de formater la valeur de ce paramètre en Date US ("mm/dd/yyyy" ou "mm-dd-yyyy").

Voici de la lecture.

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 22h16   #5
Invité régulier
 
Inscription : janvier 2006
Messages : 27
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 27
Points : 8
Points : 8
Merci à toi, pour toutes ces bonnes informations, je vais donc procéder à changer tous les formats date dans le projet, ainsi, je minimise les problèmes sur d'autres ordinateurs.

Je vais aller faire la lecture du lien que tu me donnes.

Alors, je vais tagger cette discussion comme étant résolu.
sameros est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 22h23   #6
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 205
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 205
Points : 5 258
Points : 5 258
Re,

Note que tu peux garder la fonction FormatDateUS:

Code :
1
2
3
4
5
Public Function FormatDateUS(laDate As Date) As String
' Formate la date passée en argument en date US.
 
FormatDateUS = Chr(35) & Format(laDate, "m-d-yy hh:nn:ss") & Chr(35)  ' Date au format us
End Function
ou la changer comme cela

Code :
1
2
3
4
5
Public Function FormatDateUS(laDate As Date) As String
' Formate la date passée en argument en date US.
 
FormatDateUS = Chr(35) & Format(laDate, "mm-dd-yy hh:nn:ss") & Chr(35)  ' Date au format us
End Function
par exemple:

Bonne suite
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User 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 06h04.


 
 
 
 
Partenaires

Hébergement Web