Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/08/2011, 19h36   #1
Invité de passage
 
Inscription : août 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : août 2011
Messages : 2
Points : 1
Points : 1
Par défaut Transformer une dateTexte en Date utilisable

bonjour à tous

je suis nouveau sur ce forum et ma question est relative a EXCEL et aussi a VBA et j'espère etre sur le bon forum!

J'importe d'un site une date en B2 genre Jul 26 2011 en format texte (confirmé par ESTTEXTE) et je veux la rendre utilisable en
format Date YYYY-MM-DD.

Alors en C3 j'ai déjà la formule suivante:
Code :
 =CONCATENER("=dateval(";CAR(34);"2011-";REMPLACER(GAUCHE($B$2;3);1;3;$B$3);"-";STXT($B$2;5;2);CAR(34);")")
La cellule B3 me sert a transformer le "Jul" en "7"....

Je fais ensuite un copier-coller_valeur par MACRO de C3 dans C2 --qui est formatée en Date YYYY-MM-DD-- espérant y retrouver 2011-07-26 mais j'y trouve plutôt
Pour avoir le 2011-7-26 dans cette cellule C2 , je dois faire manuellement un doubleClick puis un Enter sur C2 --intervention via msgbox--...

Je cherche à automatiser à 100% cette macro.

J'ai essayé plusieurs solutions--Convertir , copy.value etc-- sans succès.

Comment eviter l'obligation du doubleClick puis un Enter sur C2 pour avoir ma date dans le format recherché?

Merci de toute suggestion.
simo1112 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 19h49   #2
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 480
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2007
Messages : 480
Points : 1 024
Points : 1 024
Bonjour,
Le but est d'avoir en C3 une date, et non une chaîne de caractère.
Il faut donc utiliser directement la fonction DATEVAL, sans passer par CONCATENER :
Code :
=DATEVAL("2011-" & REMPLACER(GAUCHE($B$2;3);1;3;$B$3) & "-" & STXT($B$2;5;2))
Une autre variante pour s'affranchir des problèmes de format de date, la fonction DATE prend comme arguments l'année, le mois et le jour :
Code :
=DATE(2011; REMPLACER(GAUCHE($B$2;3);1;3;$B$3); STXT($B$2;5;2))
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 06/08/2011, 06h38   #3
Invité de passage
 
Inscription : août 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : août 2011
Messages : 2
Points : 1
Points : 1
Par défaut Transformer une dateTexte en Date utilisable

UN gros merci a tedo01 pcq çà marche et simplement à part de çà!
simo1112 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h34.


 
 
 
 
Partenaires

Hébergement Web