Généalogie : extraire année des dates
Résolu/Fermé
jlchaps
-
2 mai 2021 à 19:45
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 3 mai 2021 à 09:14
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 3 mai 2021 à 09:14
A voir également:
- Genealogie excel
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Mise en forme conditionnelle excel - Guide
2 réponses
jee pee
Messages postés
40464
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
22 novembre 2024
9 424
Modifié le 2 mai 2021 à 23:40
Modifié le 2 mai 2021 à 23:40
Bonjour,
Le soucis initial c'est qu'un champ date dans excel démarre au 01/01/1900. 15/05/1650 ne peut pas être un format date excel, c'est un champ texte. Après une date c'est juste un nombre, le nombre de jours écoulés depuis le 01/01/1900. C'est pourquoi pour excel le 29/08/1903 c'est aussi un nombre : 1703.
J'ai effectué de nombreux tests on ne peut pas utiliser des fonctions numériques ou des fonctions dates pour s'en sortir et extraire l'année. Il faudrait se tourner vers des fonctions texte.
Alors j'ai effectué un test en renommant le fichier .csv en .txt et quand je l'ouvre dans excel via fichier/ouvrir, séparateur = ; sur la colonne qui contient la date, au lieu d'un format standard ou date, je choisis texte. Le champ dans le fichier excel est alors exploitable avec une fonction texte comme
Pour ne pas renommer le .csv, on peut aussi passer par sur une feuille vierge :
« Données », dans le groupe « Données externes », cliquer sur « Fichier texte » et choisir le .csv.
Le soucis initial c'est qu'un champ date dans excel démarre au 01/01/1900. 15/05/1650 ne peut pas être un format date excel, c'est un champ texte. Après une date c'est juste un nombre, le nombre de jours écoulés depuis le 01/01/1900. C'est pourquoi pour excel le 29/08/1903 c'est aussi un nombre : 1703.
J'ai effectué de nombreux tests on ne peut pas utiliser des fonctions numériques ou des fonctions dates pour s'en sortir et extraire l'année. Il faudrait se tourner vers des fonctions texte.
Alors j'ai effectué un test en renommant le fichier .csv en .txt et quand je l'ouvre dans excel via fichier/ouvrir, séparateur = ; sur la colonne qui contient la date, au lieu d'un format standard ou date, je choisis texte. Le champ dans le fichier excel est alors exploitable avec une fonction texte comme
=DROITE(B1;4)éventuellement
=CNUM(DROITE(B1;4))pour obtenir un nombre.
Pour ne pas renommer le .csv, on peut aussi passer par sur une feuille vierge :
« Données », dans le groupe « Données externes », cliquer sur « Fichier texte » et choisir le .csv.
jlchaps
Messages postés
147
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
2 novembre 2024
4
3 mai 2021 à 08:51
3 mai 2021 à 08:51
Oui merci ... le crossposting peut dès fois être utile. Tout le monde ne parcourt pas tous les forum.
Oui la solution a été trouvée en VBA.
Merci
Oui la solution a été trouvée en VBA.
Merci
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 240
3 mai 2021 à 09:14
3 mai 2021 à 09:14
Oui, c'est moi qui te l'a fournie.
Le crossposting a aussi un inconvénient.
Utilisé égoïstement et sans raison (pas de réponse au bout de 24-48h par exemple), on fini par se détourner de tes questions en se disant que tu as sans doute la réponse ailleurs depuis plusieurs heures.
C'est toi qui voit...
eric
Le crossposting a aussi un inconvénient.
Utilisé égoïstement et sans raison (pas de réponse au bout de 24-48h par exemple), on fini par se détourner de tes questions en se disant que tu as sans doute la réponse ailleurs depuis plusieurs heures.
C'est toi qui voit...
eric
2 mai 2021 à 23:35
eric