[Format Date] Encodage d'une date sur 8 Num

Résolu
Pilou82 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   -
Salut tous le monde,

J'ai un pb avec une base ACCESS ou les dates et heures sont codé en format numérique (ex : 19149810 pour 30/05/2006 12h30).

J'aimerai trouvé une fonction en VB pour traduire la date.


Merci de vous pencher sur mon Pb.
A voir également:

5 réponses

blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Salut,

d'où vient ce 19149810 ?

C'est un codage fait par qui ?

Parce que là, je ne vois pas comment on peut mettre en relation ce nombre avec une date...
0
Pilou82 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
C'est une application qui gére un planning qui s'appui sur une base access. J'ai besoin d'extraire des données pour faire des Statistiques.
0
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Je veux bien t'aider, mais comment on fait pour passer de 19149810 à une date ?

C'est un timestamp unix ou autre chose ?
0
Pilou82 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   > blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention  
 
C'est bien ce que je cherche.
Je n'ai pas les sources de l'application. Je n'accéde qu'a la base et toutes les dates qui ce trouvent dans les tables sont du type "19149810 ".

En corrélant les informations contenuent dans les tables et l'affichage dans l'application d'un évenement je suis parvenu à mettre en relation

19149810 ==> 30/05/2006 10:30

@+
0
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359 > blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention  
 
Crées-en plusieurs avec des différences infimes de l'ordre de la minute, ça te donnera une idée de l'unité employée...
0
Pilou82 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   > blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention  
 
Voici le résultat de l'expérience

19149810 ==> 30/05/2006 12:30
19149811 ==> 30/05/2006 12:31
19149812 ==> 30/05/2006 12:32
19149813 ==> 30/05/2006 12:33

19151250 ==> 31/05/2006 12:30
19151251 ==> 31/05/2006 12:31
19151252 ==> 31/05/2006 12:32
19151253 ==> 31/05/2006 12:33

19152690 ==> 01/06/2006 12:30
19152692 ==> 01/06/2006 12:31
19152693 ==> 01/06/2006 12:32
19152694 ==> 01/06/2006 12:33

J'ai bien l'impression que l'application part d'une date de début (ex: 01/01/1970 01:00:00) et ajout le nombre contenue dans le champ pour donner une date.

Deux Pb :
- Comment trouver la date de début ?
- Trouver la formule ou la fonction qui perment d'ajouter un nombre à une date.


@+ Pilou82
0
elsadelatoundra Messages postés 126 Date d'inscription   Statut Membre Dernière intervention   14
 
En fait l'unité c'est les minutes:
19152690 (01/06/2006 12:30) -19151250 (31/05/2006 12:30) = 1440

1440/60(nb de minutes/heure) = 24 h soit un jour, on retombe sur nos pates vu que la différence entre les deux dates que j'ai choisi est 1 jour !!

Pour calculer la date initiale, je réfléchis et je poste dès que c'est bene !!
0
elsadelatoundra Messages postés 126 Date d'inscription   Statut Membre Dernière intervention   14
 
En fait je viens de réfléchir à propos de la date initiale, ça va être chaud de trouver je pense parce qu'avec les années bissextiles ... mes premiers calculs (grossiers) me faisaient penser que c'était y a à peu près 13 300 jours soit 36 ans et quelques !!

Je crois qu'il existe des sites sur lesquels tu tapes une date et tu vois combien de temps s'est écoulé depuis ... mais je n'ai pas d'adresse ... j'avais vu ça par hasard et je n'en comprenais pas l'utilité, maintenant, je vois un peu plus !!
0
Pilou82 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai cherché et j'ai trouvé.

Voilà la solution pour transformer 19149810 en 30/05/2006 12:30


Sub TRANSFORME_DATE()

Dim W_DATEDEBUT As Date
Dim W_CALCUL As Date

W_DATEDEBUT = "01/01/1970 01:00"
W_CALCUL = DateAdd("n", 19149810, W_DATEDEBUT)

MsgBox W_CALCUL

End Sub

A adapter à mon programme bien sur.

Merci à tous pour votre participation à mon problème.


@+++

Pilou82
0
elsadelatoundra Messages postés 126 Date d'inscription   Statut Membre Dernière intervention   14
 
cool, c'est quand même ce que j'avais trouvé : c'était bien y a 36 ans !!

bref, contente que tu aies trouvé une solution à ton problème ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
blux Messages postés 27121 Date d'inscription   Statut Modérateur Dernière intervention   3 359
 
Donc c'est un timestamp, comme sous unix, mais en minutes...

J'ai pas eu le temps de répondre !

Merci elsadelatoundra (où il ne pousse pas de cerises...)
0