VBA : convertir un champs texte en date .

[Fermé]
Signaler
-
 Titio -
Bonjour,
je travaille sous Access et j'ai un problème de type de données dans ma base.
Ma base provient d'une liaison avec un fichier excel (.csv) et tout les champs sont au format "texte".

Je veux travailler sur des dates et faire des requetes recherchant les informations comprises entre deux dates. Mais comme mon champs est au format texte ça ne fonctionne pas.
Quelqu'un peut-il m'aider?

Voici comme s'affiche ma date (au format texte) : 01/01/2007/0:0:0

Merci d'avance et a bientot ;)

6 réponses

Bonjour
CDATE est une fonction vb donc pour l'utiliser il faudra convertir les champs datefin et datedeb au format date
puis à l'enregistrement des données dans ces champs utiliser CDATE pour le formatage en date du text
Le reste est très simple.
Merci
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Impecc' merci.
Messages postés
45
Date d'inscription
vendredi 20 juillet 2007
Statut
Membre
Dernière intervention
25 avril 2008
3
Le formatage a l'air bien, essaie CDate

http://www.jalix.org/ressources/internet/asp/_vbscript/html/vbs72.htm
Le CDATE ne fonctionne pas dans ma requete SQL.

Lorsque je fais cette requete
select AVG(CDATE(datefin)-CDATE(datedeb) as moyenne
from woa; 

un message d'erreur s'affiche "type de donnée incompatible" alors que quand je le fais directement avec un champs de type date, ça fonctionne. Ma conversion doit etre incorrecte.

Que faire? quelqu'un le sait il?
quelqu'un peut il m'aider a résoudre mon problème?
attention : je ne peux pas convertir mon format dans les propriétés de la table car je passe par une importation.
Messages postés
16462
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
1 août 2021
883
Tu veux garder un champ de type texte dans ta table, et l'exploiter comme une date en sql ?

Essaie :

dateserial(mid(datefin,7,4),mid(datefin,4,2),left(datefin,2))