Convertir une colonne année

cephalotus

XLDnaute Occasionnel
Convertir une colonne année - Niveau expert

bonjour à tous,

Je recherche une formule ou une macro pour convertir les données d'une colonne "A" (par exemple) en une autre présentation.

Je joins un petit fichier explicatif, car cela est un compliqué pour décrire le point de départ et le résultat souhaité.

Merci par avance pour vos réponses.
 

Pièces jointes

  • exemple.zip
    5.5 KB · Affichages: 88
  • exemple.zip
    5.5 KB · Affichages: 81
  • exemple.zip
    5.5 KB · Affichages: 93
Dernière édition:

hoerwind

XLDnaute Barbatruc
Re : Convertir une colonne année

Bonsoir,

C'est faisable, avec une formule assez longue, mais il manque :
- (une ou) des précisions, par exemple - 30 (Jusqu'à 1930 ou Jusqu'à 2030 ?)
- et des imprécisions, par exemple 88 devient 1998 (pourquoi pas 1988 ?)

Revois ta copie, car avec une formule aussi longue, mieux vaut qu'elle soit exacte du premier coup.
 

cephalotus

XLDnaute Occasionnel
Re : Convertir une colonne année

Bonsoir Hoerwind,

Merci pour tes remarques. Je n'avais pas pensé à ces cas de figures.

Question 1 -> (une ou) des précisions, par exemple - 30 (Jusqu'à 1930 ou Jusqu'à 2030 ?)
Réponse 1 -> on ne peut pas dépasser l'année en cours. De fait, -30 devient jusqu'à 1930.

Question 2 -> et des imprécisions, par exemple 88 devient 1998 (pourquoi pas 1988 ?)
Réponse 1 -> Oups, une erreur de ma part. 88 devient 1998.

J'ai modifié le fichier joint. Une petite précision. Parfois ma colonne peut faire quelques centaines de lignes, parfois cela peut-être plusieurs milliers.

Merci pour ta, vos réponses. :)
 

Pièces jointes

  • exemple2.zip
    7.7 KB · Affichages: 46
  • exemple2.zip
    7.7 KB · Affichages: 55
  • exemple2.zip
    7.7 KB · Affichages: 67

hoerwind

XLDnaute Barbatruc
Re : Convertir une colonne année

Bonjour,

En pièce jointe, un début d'une des possibilités de formule, pour montrer comment on peut faire.

Seule la partie avec les "-" a été partiellement traitée :
- les données ont été triées en ordre logique
- les cas de figure manquants ont été ajoutés

Le même type de formule peut être écrite pour les autres parties, je te laisse faire.
Ensuite ces diverses formules peuvent être nommées de façon à pouvoir les appeler dans le tableau suivant les cas d'espèce.

Je te souhaite bon courage, car ce n'est pas évident !
 

Pièces jointes

  • ConvertirDatesAvecTextes.zip
    10.6 KB · Affichages: 53

cephalotus

XLDnaute Occasionnel
Re : Convertir une colonne année

Bonjour Hoerwind, le forum,

Merci pour ta réponse. Je viens de regarder ton fichier. J'ai l'impression que ta formule fonctionne partiellement (sur les 8 premières lignes, et seulement sur les champs possédant un trait d’union).

Si les caractères de tri sont séparés (d'un côté Feuil1 avec seulement des traits d'union, et de l'autre, une Feuil2 avec des flèches (<>)), penses-tu que la formule ou macro sera plus facile à réaliser ?

Nouvel exemple en pièce jointe.

Merci pour ta, vos réponses. :)
 

Pièces jointes

  • exemple3.zip
    5.5 KB · Affichages: 56
  • exemple3.zip
    5.5 KB · Affichages: 58
  • exemple3.zip
    5.5 KB · Affichages: 69

hoerwind

XLDnaute Barbatruc
Re : Convertir une colonne année

Re,

As-tu bien compris ce que j'écrivais sous mon message précédent :

Seule la partie avec les "-" a été partiellement traitée
Le même type de formule peut être écrite pour les autres parties, je te laisse faire

Quand au choix entre "formule" et "macro", je ne puis te conseiller, si je me débrouille un peu en formules, je suis totalement nul en macro.
 

hoerwind

XLDnaute Barbatruc
Re : Convertir une colonne année

Re,

Un forum sert à donner un coup de pouce là où cela coince, ce qui a été fait, pas pour faire le travail à la place de l'auteur de la question.

Copier bêtement une formule ou une macro sans la comprendre ne t'aura rien appris, et tu ne pourras résoudre seul un éventuel problème similaire ultérieur.

Commence par décortiquer la formule proposée, pose une question là où tu ne suis plus, c'est avec plaisir qu'on te donnera l'explication, c'est ainsi qu'on apprend.
Ensuite tu pourras écrire les autres formules toi-même.
 
Dernière édition:

cephalotus

XLDnaute Occasionnel
Re : Convertir une colonne année

Re Hoerwind,

Tu as raison.
J'ai en effet passé du temps à tenter de comprendre ta formule que tu as postée, car j'ai compris tu butais aussi sur mon problème. Bien qu’à mon niveau ta formule soit du chinois, j’ai toutefois essayé de la compléter ou la résoudre.

Ceci étant, avant d'écrire ce post, j'ai longuement recherché une solution ou début de solution sur le forum. Comme je le fais habituellement lorsque je recherche une solution pour résoudre un problème que je rencontre sur Excel.

Je te remercie pour tes réponses.
Bonne journée. :)
 

hoerwind

XLDnaute Barbatruc
Re : Convertir une colonne année

Re,

Je t'établis un petit exemple pour te montrer comment "décortiquer" une formule.
Un peu de patience.

Edition :
Voilà qui est fait.
La formule a été éclatée dans plusieurs colonnes, ce qui en facilite la compréhension.
J'ai aussi adapté la première formule à la configuration de la deuxième zone (les "-" à l'arrière).

Faire plus que cela serait te rendre un bien mauvais service.
 

Pièces jointes

  • ConvertirDatesAvecTextesV2.zip
    10.9 KB · Affichages: 69
Dernière édition:

JNP

XLDnaute Barbatruc
Re : Convertir une colonne année

Bonjour le fil :),
Vu le nombre de tests à effectuer, je suis passé par une fonction VBA :p.
Et même comme ça, ce ne fut pas de la tarte :D...
En espérant qu'Hoerwind ne pensera pas que c'est un mauvais service que je te rends :eek:...
Bonne journée :cool:
Ajout : Je viens de regarder tes formules, sympa :)
Ajout 2 : fichier corrigé après remarque d'Hoerwind rechargé ;)
 

Pièces jointes

  • Dates.xls
    44.5 KB · Affichages: 120
  • Dates.xls
    44.5 KB · Affichages: 119
  • Dates.xls
    44.5 KB · Affichages: 121
Dernière édition:

hoerwind

XLDnaute Barbatruc
Re : Convertir une colonne année

Salut JNP,

Je m'abstiens de commentaire, ... mais ça chatouille !

Néanmoins un petit, en passant.
Comment notre ami va-t-il faire lorsqu'il constatera que le résultat renvoyé par la macro n'est pas conforme à son souhait ?
A titre d'exemple, mets 11 - en A2, le résultat devrait être Depuis 1911 et non Depuis 2011

Idem pour A16, A19, ...

De plus, il y a des résultats bizarres : 00 > 12 renvoie De 2000 à 1912.
Je sais que c'est un cas non prévu sous le fichier original, mais cela fait quelque peu désordre.

Donne un poisson à quelqu'un qui a faim, il mangera un jour, apprends lui à pêcher, il mangera toute sa vie.
 

YANN-56

XLDnaute Barbatruc
Re : Convertir une colonne année

Bonjour cephalotus, aux participants, et à ceux qui passeront par ici,

JNP, tu as raison! :) A ce stade d'exigence, il est vivement souhaitable
de passer par VBA, à moins d'être aguerri aux formules à charnières...

Je pense que son tableau serait énormément plus facile à gérer
avec une colonne ayant pour entête: "Depuis:" et une deuxième: " à ".


Après avec "CDec(CDate(xxxx.Value)), on fait ce que l'on veut.

Mais c'est à lui de jouer maintenant.

Amicalement.

Yann
 

YANN-56

XLDnaute Barbatruc
Re : Convertir une colonne année

hoerwind, re Bonjour,

Donne un poisson à quelqu'un qui a faim, il mangera un jour, apprends lui à pêcher, il mangera toute sa vie.

Nous avons les mêmes sources chinoises, n'est-il pas?
Je l'ai souvent dit par ici, et nos termes se ressemblent.

Cela est bigrement vrai pour les aides sur XLD

Amicalement, et au plaisir.

Yann.
 

Discussions similaires

Statistiques des forums

Discussions
312 185
Messages
2 086 011
Membres
103 093
dernier inscrit
Molinari