Excel: Formater du text en date

Résolu/Fermé
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 - 15 oct. 2012 à 15:29
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 - 18 oct. 2012 à 02:52
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,


A voir également:

12 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
Modifié par gbinforme le 15/10/2012 à 23:02
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
1
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié par Mike-31 le 15/10/2012 à 15:37
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.
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
15 oct. 2012 à 15:47
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
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
15 oct. 2012 à 15:48
Apr est abrégé pour April (avril en anglais)
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
15 oct. 2012 à 19:11
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
0

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

Posez votre question
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
15 oct. 2012 à 20:43
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 :-/

0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
15 oct. 2012 à 21:58
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
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
16 oct. 2012 à 16:54
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?
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
16 oct. 2012 à 17:17
Bonjour BILLING,

Il faut la copier dans un module pas sur une feuille pour qu'elle soit prise en compte : c'est sans doute ce qui t'arrive car #NOM? signifie qu'il n'a pas trouvé la fonction.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
16 oct. 2012 à 18:59
Re,

Rendons à César ce qui appartient à César, la belle fonction personnalisée est de Gbinforme, merci à lui.
En ce moment je traine en pointillé sur les forums et ai du mal à suivre les discussions.
A+
Mike-31
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
16 oct. 2012 à 19:21
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 :-(
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
16 oct. 2012 à 19:26
Quoi qu'aussitôt dit que j'abandonnais, j'ai essayé de nouveau et cette fois j'ai un nouveau résultat: #VALLEUR! Pourquoi?
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
16 oct. 2012 à 19:30
En passant, ta fonction est bel et bien enregistrée dans un module.
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
16 oct. 2012 à 20:54
Bonjour BILLING,

Un petit fichier exemple peut-être :

https://www.cjoint.com/?BJqu1Q9Atxk
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
16 oct. 2012 à 20:01
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/
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
16 oct. 2012 à 20:53
Voici le lien

https://www.cjoint.com/?3Jqu0h5VmNt

Je ne crois que la fonction aie suivie parcontre.

Merci encore :-)
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
16 oct. 2012 à 23:06
Bonjour BILLING, Mike,

Si tu nous avez donné ton "échantillon" dès le départ, cela fonctionnerait comme ici :

https://www.cjoint.com/?BJqxeGxA5Zj
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
16 oct. 2012 à 21:22
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
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
18 oct. 2012 à 02:52
Hey la gang! Ça fonctionnne!


Un gros merci encore une fois :-)
0