XL 2013 récupérer les dates dans une chaine (formule excel)

patricktoulon

XLDnaute Barbatruc
Bonjour à tous
je vais commencer a me faire un recueil d'exemple de formule excel pour le texte

aujourd'hui je cherche une formule qui pourrait me donner la Nieme( de 1 à x) date dans une chaine
à l'heure actuelle j'ai la première simplement avec STXT ET CHERCHE
=STXT(A1;CHERCHE("??/??/????";A1;1);10)
j'aimerais trouver une formule qui me permette d'avoir la 2d , la 3eme etc...
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous :),

Comme assez régulièrement, je viens sans doute après la bataille.
Je précise que je n'ai regardé aucune formule précédente de ce fil ; j'espère que ma formule ne fait pas double-emploi avec une formule déjà publiée :(. Je ne voudrais froisser personne.

C'est une formule matricielle. Le texte est en A2, l'occurrence N à trouver en A6.

Voici la formule en A10 :
=SIERREUR(STXT($A$2;PETITE.VALEUR(SI(ESTNUM(DATEVAL(SI(ESTNUM(--STXT($A$2;LIGNE($2:$258);2)) * (STXT($A$2;LIGNE($2:$258)+2;1)="/")* ESTNUM(--STXT($A$2;LIGNE($2:$258)+3;2)) * (STXT($A$2;LIGNE($2:$258)+5;1)="/") * ESTNUM(--STXT($A$2;LIGNE($2:$258)+6;4));STXT($A$2;LIGNE($2:$258);10);"")));LIGNE($2:$258);"");A6);10);"")

Notez :
  • on fait une vérification de la date. C'est pourquoi, dans l'exemple, la formule ne trouvera que 3 occurrences (29/02/1999 n'étant pas une date correcte, ce n'est pas une occurence).
  • la valeur 258 peut-être augmentée ou diminuée. Cette valeur doit être supérieure au nombre de caractères possibles du texte
  • les dates doivent être au format 10 caractères : jj/mm/aaaa
 

Pièces jointes

  • patricktoulon- Extraction nième Date- v1.xlsx
    11 KB · Affichages: 5
Dernière édition:

JHA

XLDnaute Barbatruc
Bonjour à tous,

Je me permets une petite remarque.
J'ai essayé la formule de job75 ;) que je félicite avec des espaces dans la phrase et cela ne donne pas satisfaction. J'ai donc enlevé les espaces avec la fonction substitue.

VB:
=STXT(SUBSTITUE(A2;" ";"");PETITE.VALEUR(SI(ESTNUM(--STXT(SUBSTITUE(A2;" ";"");LIGNE(INDIRECT("1:"&NBCAR(SUBSTITUE(A2;" ";""))));10));LIGNE(INDIRECT("1:"&NBCAR(SUBSTITUE(A2;" ";"")))));A6);10)

JHA
 

patricktoulon

XLDnaute Barbatruc
re
ha bon ?
bon ben on garde la tienne alors puisqu'elle fonctionne sur les deux
allez une dernière ligne droite
comment faire pour la rendre étirable vers le bas ou vers la droite
j'ai essayé ligne(A1) à la place de A6 mais ça ne fonctionne pas
 

Pièces jointes

  • Extraction nième Date(1)ex_@JOB75.xlsx
    11.8 KB · Affichages: 0

AtTheOne

XLDnaute Accro
Supporter XLD
Bonjour à toutes & à tous, @patricktoulon, @mapomme , @job75, @JHA
Un petit bug dans la formule de @job75, s'il y a une suite de 10 chiffres ou plus dans la chaîne la formule extrait aussi cette suite ...
1708858430676.png

Mais c'est quand bien plus concis que ma formule !
 

Discussions similaires

Statistiques des forums

Discussions
313 297
Messages
2 096 928
Membres
106 789
dernier inscrit
FrancoisVLD