Problème de date pour le publipostage

Titionebe -  
 Titionebe -

Bonjour,

J'ai un problème avec mes dates et mon publipostage.

J'ai un tableur sous Excel dans lequel j'insère des dates, qui ne sont pas forcément connue précisément. Je les met donc sous forme 01/01/2000 pour les mieux connue, janv-2000 quand je ne connais que le mois, 2000 quand je ne connais que l'année, ou carrément "date inconnue" quand je ne la connais pas. Et donc, lorsque je fait mon publipostage, les cellules sous forme de date me donnent la version retenue par Excel (sous forme de nombre de jour depuis je ne sais plus quand), ce qui m'embête .

à ce problème j'ai trouvé la solution de créer une seconde colonne (qui est donc celle que je publiposte) dans laquelle j'y met une formule qui me convertit ma date en texte dur, ce qui me permet un publipostage efficace.

Mais là se pose un autre problème, celui qui me pose une colle et que j'aimerais vous partager. J'ai beau tester des formules dans tout les sens, les tourner dans un sens puis dans l'autre, je n'arrive pas à avoir ce que je veux: avoir une formule qui me permet de traduire les dates sous forme "dd/mm/yyyy" en texte, mais de laisser les autres tel quel.

Voici les deux dernière en date et leur problème:
=SI(ESTTEXTE(A1);A1;SI(A1>DATE(1950;1;1);TEXTE(A1;"dd/mm/yyyy");A1))     qui me pose comme problème que les date comme "juil-19" me sont converti en "01/07/2019" au lieux de rester en "juil-19"
=SI(TEXTE(A1;"dd/mm/yyyy")<>A1;TEXTE(A1;"dd/mm/yyyy");A1)   qui me pose comme problème que les dates comme "2020" sont traduite en "12/07/1905" au lieux de rester en "2020"

Au cas où j'utilise la version 2412 d'Excel

Je vous remercie par avance de l'aide que vous pourrais m'apporter


Windows / Chrome 132.0.0.0

3 réponses

Titionebe
 

Merci pour votre aide, mais j'ai finalement trouvé une autre solution. J'ai remarqué que les dates convertit en nombre de jours était systématiquement au dessus de 10000 (donc 5 chiffres), et vue qu'on est avant l'an 10000, le nombre de chiffre de l'année était inférieur à 5... j'ai donc fait cette formule: =SI(ESTTEXTE(AB2);AB2;SI(NBCAR(AB2)>=5;TEXTE(AB2;"dd/mm/yyyy");AB2))

C'est du bidouillage, pas très élégant, mais ça marche

1
NonoM45 Messages postés 770 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour,

Mon dieu, ne vous embêter pas avec tout ça, c'est un souci connu !!!

Il suffit de rajouter une mise en forme à son champ

Remplacer le champ de fusion {Date_de_naissance} par {Date_de_naissance \@ ''dd/MM/yyyy''}

https://answers.microsoft.com/fr-fr/msoffice/forum/all/probl%C3%A8me-de-format-de-date/99efc38b-4d23-4f40-954b-5d850e7fe571

A+

0
Titionebe
 

Bonjour, merci de votre réponse rapide!

Mais c'est bien la première solution que j'ai vue en épluchant les forums... et ce que ça me donne, c'est que les dates qui sont censé êtres exprimé avec seulement l'année, sous traduit en date dd/mm/yyyy, ce que je ne veut pas...

Mon problème viens du fait qu'il faut que j'arrive à gérer plusieurs formats à la fois. C'est pour ça que j'ai besoin d'une solution avec plusieurs conditions.

0
Argitxu Messages postés 4839 Date d'inscription   Statut Contributeur Dernière intervention   4 813 > Titionebe
 

Bonjour

Pour une date avec jour/mois/année, comme Nono45 te l'a indiqué :

{ChampDate\@ "dd//MM/yyyy"} où dd = jour, MM = mois et YYYY = l’année

Pour obtenir une date qu’avec l’année {ChampDate\@ "yyyy"}

Argitxu

0
NonoM45 Messages postés 770 Date d'inscription   Statut Membre Dernière intervention   > Titionebe
 

Re,

Vous pouvez mettre une condition SI ALORS dans votre champ de fusion, à vous de trouver la bonne formulation !

1
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 

Bonjour

Peut être mettre les cellules dates au format texte avant toute saisie

Cdlmnt

0
NonoM45 Messages postés 770 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour,

Il semble me rappeler que cette solution en fonctionne pas, Word converti les dates textes en vraies dates...

0