Excel: Formater du text en date
Résolu
BILLING
Messages postés
162
Date d'inscription
Statut
Membre
Dernière intervention
-
BILLING Messages postés 162 Date d'inscription Statut Membre Dernière intervention -
BILLING Messages postés 162 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Quelle est la façon la plus simple de transformer dans Excel le contenu d'une cellule comme ceci: "Apr 3 2012 4:03PM" en format de date et heure?
Il y a plus de 1800 entrées comme ça. Est-ce possible de le faire facilement? Sans tout retaper?
Merci,
--
eLise
Quelle est la façon la plus simple de transformer dans Excel le contenu d'une cellule comme ceci: "Apr 3 2012 4:03PM" en format de date et heure?
Il y a plus de 1800 entrées comme ça. Est-ce possible de le faire facilement? Sans tout retaper?
Merci,
--
eLise
12 réponses
-
Bonjour BILLING, Mike-31,
Pour transformer ta date ésotérique en date excel, je te propose de mettre cette fonction personnelle dans un module :
Public Function vers_date(text) Dim elm As Variant, moi As Variant, i As Integer moi = Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec") elm = Split(text, " ") For i = 0 To UBound(moi) If moi(i) = elm(0) Then Exit For Next i If i < 12 Then vers_date = DateValue(elm(1) & "/" & i + 1 & "/" & elm(2)) + TimeValue(elm(3)) Else vers_date = "#DATE#" End If End Function
Pour l'appeler dans ta feuille, tu saisis : =vers_date(A1)
avec la date à transformer en A1 et mettre le format souhaité dans le résultat.
Si tu as des erreurs il faut peut-être rectifier la liste des mois anglais, car je suis loin d'être bilingue ;-)
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry -
Salut,
Tes données se composent bien comme ton exemple, "Apr 3 2012 4:03PM"
entre quillemet Apr etc ...
la date 3 2012 4 correspond à quoi au 3/4/2012 ou 4/3/2012
les heures tu souhaites avoir ce format 4:03PM ou 24 heures et donc 16:03
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir. -
Bonjour Mike-31
Non, il n'y a pas de guillemets dans la cellule, juste Apr 3 2012 4:03PM.
Idéalement, le format recherché serait comme suit: 3 avril 2012 4:03PM
-
Re,
Re,
En relisant ton problème, j'avais compris pour Apr le problème est justement cet Apr ou April qu'Excel ne comprend pas sur sa version Française.
A part faire dans une colonne la liste des mois Anglais mais si ces mois sont abrégé comme Apr il faudra respecter une logique constante et pour les mois on combine une recherchev pour recomposer la date et on formate la cellule comme on veut
je regarde ça dans la soirée -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Et si dans ma cellule j'avais ceci au lieu de ce que j'ai emtionné plus haut:
4/9/2012 11:11:29 AM
Est-ce plus simple à convertir en format date qu'Excel saura lire?
J'ai essayé en convertisasnt les / en - et ensuite appliqué le format mmmm-jj-aaaa hh":"mm":"ss mais ça ne fonctionne toujours pas. J'aurais cru qu'une fois inscrit comme ceci: 4-9-2012 11:11:29 AM le format se serait appliqué, mais non :-(
Excel n'est pas très intuitif pour les dates :-/
-
Re,
Oui mais la du coup tu saisis un format excel et il n'y a plus rien à modifier si ce n'est que le format
Tout dépend de tes données de base, si tu as Apr 3 2012 4:03PM il suffit de traiter Apr ou April idem pour les autres mois et le tour est joué, reste plus qu'a concatener les occurences pour en faire une date.
alors comment sont exactement tes données -
Bonjour Mike,
J'ai copier/collé ta fonction dans mon classeur. Je l'ai appelé avec =vers_date(A1) mais mon résultat est le suivant: #NOM?
La liste abrégée des mois anglais est parfaite, c'est pas là l'erreur. Je me demande si j'ai bien créé cette fonction. Je suis allée dans Visual Basic, copié/collé ta fonction tel quel, sauvegardé. Est-ce que j'ai manqué quelque chose?
-
Mike, je te remercie pour tout tes efforts mais je dois abandonner.
Je me rends compte qu'à ce point-ci, il me manque beaucoup trop de notions sur les Macros pour pouvoir continuer.
Je reviendrai sans doute avec d'autres questions pour d'autres tâches mais celle-ci me dépasse. De plus, la personne qui m'a demandé de trouver une solution utilise mainteant un autre rapport qui lui permet d'accomplir ce qu'il veut.
Merci encore et desolée pour le temps perdu :-(
-
Re,
il faudrait avoir ton fichier sous les yeux pour pouvoir te répondre avec précision sur l'erreur.
Si ton fichier ne contient pas de notes confidentielles (que tu peux masquer avec des toto, titi etc ) tu peux le mettre à notre disposition avec ce lien
https://www.cjoint.com/
-
Voici le lien
https://www.cjoint.com/?3Jqu0h5VmNt
Je ne crois que la fonction aie suivie parcontre.
Merci encore :-)
-
Bonjour BILLING, Mike,
Si tu nous avez donné ton "échantillon" dès le départ, cela fonctionnerait comme ici :
https://www.cjoint.com/?BJqxeGxA5Zj
-
-
Re,
Attention aux transcriptions des dates tu as plusieurs espaces entre chaque donnée, avec un espace tout marche (entre Apr et le jour tu en as 2 et entre l'année et l'heure également).
Par contre si tu as plusieurs espaces il faudra aménager la fonction
-
Hey la gang! Ça fonctionnne!
Un gros merci encore une fois :-)