IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Modifier l'affichage d'une date


Sujet :

Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut Modifier l'affichage d'une date
    Bonjour,

    La date par defaut sur IBM DB2 ("01.01.0001") est representée en Ms Access 2003 par "01.01.1901".
    Est il possible de modifier cet affichage ?

    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 172
    Points
    12 172
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    0001 sera vu comme 2001 par défaut si import ou saisie il y a.
    Par défaut, la date mini dans Access 2003 est 31/12/1899 avec la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyDate = Format$(0,"dd/mm/yyyy")
    La chaîne 01.01.0001 sera vue comme une date en tant qu'heure et non en date...
    Sachant que la date la plus petite gérable par Access est 01/01/100 soit le 1er janvier de l'an Cent, tu ne pourras pas appliquer les dates que tu possèdes sauf si ton champ reste un champ texte.

    Tu ne pourras pas non plus faire de calculs de date dessus.

    Argy

    PS : Ca fait loin quand même, l'an 0001...
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Function datibm(x As String) As Date
    datibm = DateSerial(CInt(Right(x, 4)) + 1900, CInt(Mid(x, 4, 2)), CInt(Left(x, 2)))
    End Function
    Elle est pas belle la vie ?

  4. #4
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 172
    Points
    12 172
    Billets dans le blog
    5
    Par défaut
    Bonjour Random,
    me retourne 01/01/1901, chose à laquelle je m'attendais en lisant ton code !
    Ai-je loupé quelque chose ?

    Quand bien même, dans la mesure où l'on peut trouver la bonne fonction de conversion :
    1/ Je suppose que VitamineC importe ses données...
    2/ Access ne saura pas interpréter des dates en deça de l'an 100.

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    Merci pour vos interventions !
    Pour te repondre argyronet, les tables sont liées dans Access.

    Si la seule solution consiste à transformer ce champs en texte, ne puis je pas utiliser la fonction CONVERT, CAST ou FORMAT du sql dans un query ?

  6. #6
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 172
    Points
    12 172
    Billets dans le blog
    5
    Par défaut
    Re,

    Avec n'importe quelle fonction de conversion tu ne parviendras pas à tes fins.
    Access ne sait pas interpréter des dates en deça de l'an 100 après le ti Jésus, j'entends bien .

    Si tu tapes 01/01/01 en espérant avoir 0001 en guise d'année dans un champ de type date/heure, Access inscrira 01/01/2001 parce qu'il considère que tu as moins de 100 ans et que Windows n'existait pas en 1901

    Juste une question au passage afin de satisfaire ma curiosité... Pourquoi as tu besoin d'une telle date ?

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    Ok, disons que le range est entre 100-9666 pour cette fonction.
    Par defaut, j'aurais affiché "01/01/100" dans ce cas et pas "01/01/1901" pour une date inferieure.

    Apres verifications:
    DB2 -> Access
    01.01.0001 1/01/1901
    01.01.0002 1/01/1902
    01.01.0100 1/01/2000
    01.01.0199 1/01/2099
    01.01.0200 1/01/200
    01.01.9999 1/01/9999

    La premiere date qui me semble correctement affichee est le 01.01.0200.

    Pk utiliser une telle date ? Ce point n'est pas de mon ressort mais ca me semble logique pour une date par defaut meme si, fonctionnellement, on pourrait utiliser qlq chose comme "01.01.1000".
    Cette question n'entre pas dans le cadre du projet mais est une question personnelle.

    On a fait le tour du probleme, non ?

  8. #8
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 172
    Points
    12 172
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par VitamineC Voir le message
    On a fait le tour du probleme, non ?
    Pour ma part, oui...

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    Ok merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [D6][TValueListEditor] Modifier l'affichage d'une cellule
    Par Lung dans le forum Composants VCL
    Réponses: 5
    Dernier message: 21/02/2007, 09h26
  2. affichage d'une date depuis mysql
    Par kitty2006 dans le forum Requêtes
    Réponses: 7
    Dernier message: 22/08/2006, 17h56
  3. Affichage d'une date dans x jours
    Par Paulux1 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 17/07/2006, 16h49
  4. [VB6] mauvaise affichage d'une date
    Par robert_trudel dans le forum VB 6 et antérieur
    Réponses: 17
    Dernier message: 11/06/2006, 18h03
  5. Modifier l'affichage d'une requête
    Par seal dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/09/2005, 14h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo