Problème d'affichage d'une date sur Access

projetvigouroux -  
 Tessel75 -
Bonjour,
Je souhaite rajouter dans une table "Employé" une ligne puisqu'un nouvel employé a été embauché, pour cela j'ai utilisé la fonction INSERT INTO puis VALUES, j'ai rentré toutes les valeurs, tout marche très bien sauf la date que j'ai rentré en 19/12/1975 et qui s'affiche dans ma table en 00:01:09. J'aimerais savoir comment cela peut s'afficher comme je l'ai rentré ?

Merci d'avance

5 réponses

  1. Tessel75
     
    Bonjour,
    'est juste une question de format de date. Il faut chercher dans le format de ton champ, ou de ton contrôle si c'est un formulaire, le format adéquat pour avoir le type d'affichage que tu veux. Manifestement, tu as choisis (ou le format s'est mis tout seul) en format heure. Le choix du format por chaque champ se fait dans le petit cadre en bas.
    Bonne suite
    0
    1. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      Bonjours Tessel75
      Temps: VraiFaux(Mois([Date/Nais])<Mois([Date/Sais]) Ou (Mois([Date/Nais])=Mois([Date/Sais]) Et Jour([Date/Nais])<Jour([Date/Sais]));Année([Date/Sais])-Année([Date/Nais])-1;Année([Date/Sais])-Année([Date/Nais])) & " ans " & VraiFaux(Mois([Date/Sais])>Mois([Date/Nais]);12-Abs(Mois([Date/Nais])-Mois([Date/Sais]));Mois([Date/Nais])-Mois([Date/Sais])) & " mois " & VraiFaux(Jour([Date/Sais])>Jour([Date/Nais]);365-Abs(Jour([Date/Nais])-Jour([Date/Sais]));Jour([Date/Nais])-Jour([Date/Sais])) & " Jours"
      Dans ce vrai faux, on calcule la periode en année mois jour.
      Peux tu m'aider a modifier ce calcule le nombre de semaines
      C'est a dire ans mois semaine jours
      Je te remercie
      Castoursl
      0
    2. Tessel75
       
      J'ai ouvert une nouvelle question pour ce sujet.
      0
    3. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217 > Tessel75
       
      Bonjour Tessel75
      Dans quel rubrique?
      Merci de ton aide
      0
    4. Tessel75 > castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention  
       
      Sous le titre "Réponse à Castours" (ça m'a valu une remarque du modérateur. Bof!)
      0
    5. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217 > Tessel75
       
      Bonjour
      Oui la discussion est fermée.
      As tu trouvé une solution?
      Merci De ton aide
      0
  2. Tessel75
     
    Je remets ma 1ère réponse.

    Il a fallu que je réécrive toute la formule pour la comprendre, ça donne :

    AN = Année([Date/Nais])
    AS = Année([Date/Sais])
    MN = Mois([Date/Nais])
    MS = Mois([Date/Sais])
    JN = Jour([Date/Nais])
    JS = Jour([Date/Sais])
    VraiFaux(MN < MS Ou (MN = MS Et JN < JS ) ; AS -AN -1 ; AS -AN ) & " ans "
    & VraiFaux( MS > MN ; 12 - Abs(MN -MS ) ; MN -MS ) & " mois "
    & VraiFaux( JS > JN ; 365-Abs(JN - JS) ; JN -JS) & " Jours"


    A mon sens pour introduire le nbre de semaines, il faudrait soit passer par la fonction "week()" qui calcule le N° de la semaine dans l'année, soit directement en calculant le nombre de jours restant après le compte des années et des mois, et en le divisant par 7. Ainsi on aurait :
    Abs(VraiFaux( JS > JN ; 365-Abs(JN - JS) ; JN -JS) / 7) & "sem"

    Mais je ne comprends pas pourquoi cette formulation :
    ==> . VraiFaux( JS > JN ; 365-Abs(JN - JS) ; JN -JS)
    alors qu'on devrait avoir :
    ==> . VraiFaux( JS > JN ; JS - JN ; 365 + (JS - JN)
    0
  3. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    bonjour
    J'ai modifie ce calcul mais cela bloque encore
    Peux tu m'aider dans la syntaxe
    Temps2: VraiFaux(Mois([Date/Nais])<Mois([Date/Sais]) Ou (Mois([Date/Nais])=Mois([Date/Sais]) Et
    Semaine([Date/Nais])<Semaine([Date/Sais]) Et
    Jour([Date/Nais])<Jour([Date/Sais]));Année([Date/Sais])-Année([Date/Nais])-1;Année([Date/Sais])-Année([Date/Nais])) & " ans " &
    VraiFaux(Mois([Date/Sais])>Mois([Date/Nais]);12-Abs(Mois([Date/Nais])-Mois([Date/Sais]));Mois([Date/Nais])-Mois([Date/Sais])) & " mois " &
    VraiFaux(Semaines([Date/Sais])>Semaine([Date/Nais]);52-Abs(Mois([Date/Nais])-Semaine([Date/Sais]));Semaine([Date/Nais])-Semaine([Date/Sais])) & " semaine " &
    VraiFaux(Jour([Date/Sais])>Jour([Date/Nais]);365-Abs(Jour([Date/Nais])-Jour([Date/Sais]));Jour([Date/Nais])-Jour([Date/Sais])) & " Jours"
    0
  4. Tessel75
     
    Bonjour,
    Tu ne me dis pas où ça bloque.
    A mon avis, la manière de procéder est de faire progressivement pas à pas, càd tester une à une toutes les formules avant de les inclure dans un "VraiFaux()".
    Ainsi tu poses une série de champs calculés pour vérifier que les formules distinctes passent et donnent le résultat attendu.
    Une solution serait d'utiliser la fonction Mod() qui existe dans Excel et qu'on peut importer dans Access en ajoutant Excel dans la bibliothèque des références de l'espace VBA, et de demander aux spécialistes de Excel sur CCM, ils sont très forts.
    Sinon, reprendre à la main les cycles annuels. Mais c'est trop compliqué pour moi; le problème est celui des semaines introduit parmi les mois parce que s'il est facile de connaitre le n° du jour dans le mois et le n° du jour dans la semaine, il faut déterminer le nbre de semaines entre la date d'anniversaire de l'année en cours et la date de saisie, cela déduit le nbre de mois.
    Désolé de ne pour t'aider davantage. Mais le plus simple reste les modulo de Excel.
    0
    1. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      bonjour
      Fonction semaine non défini dans l' expression
      C'est le message renvoyé lors du lancement de la requete
      Peut on envoyé un email direct sur comment ca marche.
      Merci pour ton aide
      0
    2. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      Bonjour
      pour ce qui est de ton message faire du pas a pas je ne sais pas faire
      Peux tu me faire la syntaxe uniquement pour la semaine
      Comment declaré une fonction
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Tessel75
     
    En fait par "pas à pas", je voulais dire essayer les fonctions une à une dans la requête pour tester celles qui donnent le résultat attendu et celles qui accrochent, et alors seulement quand tout est parfait, seulement les rassembler.
    Pour moi, après avoir bien cherché, j'ai fini par retrouver celle que je voulais; c'est :
    PartDate("ee";[DateChoisie])
    qui donne le N° de la semaine dans l'année, il faut seulement faire attention pour la 1ère semaine, quand le comptage débute, la 1ère semaine n'est pas forcément celle du 1er janvier.
    ATTENTION: Ne pas confondre avec
    "PartDate("e";[DateChoisie])" (un seul "e")
    qui donne le n° du jour dans la semaine.
    Bonne suite
    0
    1. Tessel75
       
      Bonjour Castours,
      Ma réponse a-t-elle pu te rendre service?
      0
      1. castours > Tessel75
         
        Bonjour
        J'abandonne la requete car compliqué a mettre en oeuvre.
        Cela accroche quand je veux ajouter semaine.
        Acces me renvoie fonction semaine non defini..
        La formule de calcul, c'est du SQL?
        La je bloque
        merci de ton aide
        0
      2. Tessel75 > castours
         
        Non la formule passe en mode graphique version française, c'est comme cela que je l'ai testé. Elle marche sans problème, "[DateChoisie]" est le nom du champ bien entendu.
        Si c'était du SQL, càd en anglais, je pense que ce serait plutôt :
        DatePart("ww", [DateChoisie]) , avec "ww" à la place de "ee" et une virgule à la place du point-virgule comme c'est toujours le cas.
        Bon courage tout de même.
        0