Convertir une date complete en une valeur

bond21 -  
bond21 Messages postés 4 Statut Membre -
Bonjour,
1). J' ai dans un fichier la date exprimee ainsi : Jul 4 2008 08:48 PM
Comment puis-je la recuperer exprimee en un nombre?

2). Quelle est la fonction complete qui me permettrait de copier juste la premiere partie du champ "Jul 4 2008" dans une autre colonne a creer dans ma base fichier? Idem pour la seconde partie du champ avec 08:48 PM?

Merci par avance.
A voir également:

9 réponses

bugger
 
Salut,

qu'utilises tu comme logiciel de prog ? VBA, VB, Java... C ?
0
bond21
 
Salut,
j' utilise juste Access sous Windows... Je recois un fichier de suivi de mouvement de pieces avec les dates comme ca.
Merci de ton aide.
0
bond21
 
Bonjour,
Sous ACCESS:

1). J' ai dans un fichier la date exprimee ainsi : Jul 4 2008 08:48 PM
Comment puis-je la recuperer exprimee en un nombre?

2). Quelle est la fonction complete qui me permettrait de copier juste la premiere partie du champ "Jul 4 2008" dans une autre colonne a creer dans ma base fichier? Idem pour la seconde partie du champ avec 08:48 PM?

Merci par avance.
0
bugger
 
Ok,

admettons que ta date soit dans la variable d

Pour la convertir en numerique :

CInt(d) (donne un entier), normalement devrait suffire

Pour separer la date du temps :

MavariableTemsp = Format(d, vbShortTime)

MavariableDate = Format(d, vbShortDate)

Si tu veux des formats plus complets, remplacer Short par Long

Voili voilou

Tiens moi au courant si ca marche

Manu
0
bond21 Messages postés 4 Statut Membre
 
Merci Manu, c' est super sympa.
Je te tiens au courant ce week-end car faut que je bosse dessus avant lundi...
Là j'arrive plus à grand chose, je vais me coucher.
Nico.
0

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

Posez votre question
bugger
 
Bon courage et bon week_end !
0
bond21 Messages postés 4 Statut Membre
 
Bon, j' ai essaye mais ca ne marche pas, j'obtiens une erreur et je dois faire quelque chose de faux:
Mon champ actuel est: Jul 2 2008 04:48PM

Ma requete de base est et ne marche pas, j' ai une erreur:
SELECT CInt([DateTime]) AS Expr1
FROM Blad1;

Si je fais:
SELECT [DateTime]
FROM Blad1;

J'obtiens alors bien evidemment le champ d'origine "Jul 2 2008 04:48PM", mais je le voudrais en valeuret qui doit etre egal à: 39631,7

Nico
0
bond21 Messages postés 4 Statut Membre
 
Bon, j' ai essaye mais ca ne marche pas, j'obtiens une erreur et je dois faire quelque chose de faux:
Mon champ actuel est: Jul 2 2008 04:48PM

Ma requete de base est et ne marche pas, j' ai une erreur:
SELECT CInt([DateTime]) AS Expr1
FROM Blad1;

Si je fais:
SELECT [DateTime]
FROM Blad1;

J'obtiens alors bien evidemment le champ d'origine "Jul 2 2008 04:48PM", mais je le voudrais en valeuret qui doit etre egal à: 39631,7

Nico
0
bugger
 
SAlut

as tu essaye de mettre cette fonction reliee a ton champ..., a condition qu'il soit un format texte

SérieDate(Année;Mois;jour)

En VBA, c'est DateSerial(Year, Month, Day)

A voir, sinon j'ai pas d'autres idees.
0
bond21 Messages postés 4 Statut Membre
 
Je ne suis pas certain de saisir ce que je dois faire dans ma formule?
Mon fichier est un fichier Excel et je viens de changer le champ de format standard a format texte.

Je passe par un SELECT sur mon champ DateTime et je ne sais pas quo lui appliquer par rapport à SérieDate(Année;Mois;jour) ou DateSerial(Year, Month, Day)-

J' ai essaye un autre truc juste pour voir. Quand je separe manuellement la Date et le Time dans 2 champs distincts j'arrive a obtenir la bonne valeur en passant par la fonction CDate en anglais car j' ai la version anglaise. Mais bon c' est complique car faire manuellement cette separation sur 2 champs c' est impossible sur un gros volume de donnees. Peut-etre y a t-il une bonne fonction pour me dire de ne selectionner que les x premiers caracteres d'un champ, ou mieux de lire de gauche a droite et des qu'il rencontre le premier caractere blanc (barre espace) il faut qu'il s'arrete avant pour ne garder que la date?

Je suis preneur aussi d'une autre fonction qui ferait la difference entre 2 dates. Sous Access 2003, il y a la fonction DateDiff (DiffDate en francais) mais ca ne marche pas non plus. J' ai bien 2

SELECT [Date],[BeforeDate], DateDiff(d,[BeforeDate],[Date])
From Blad1

Que je mette 0, 1 ou 2 pour d, ca me donne un erreur sur la 3eme colonne. D'ailleurs je ne comprends pas pourquoi il me demande une valeur pour d. Je voudrais qu'il m'exprime la difference en jours.

Je trouve que les aides sont souvent avec des exemples a la con, toujours facile mais des qu'on complique un peu ca dedevient dur d' voir des bons exemples.

Merci par avance si tu peux m' aider Manu, sinon tant pis faudra que je reflechisse encore ou bien je repasserai cette question avec un titre Access.
Bon week-end.
0