Extraire une partie du texte dans une cellule

Bonjour à tous,

Je cherche une formule pour extraire un texte inscrit entre deux tirets de 6.

Ci-joint mon fichier pour illustration.

Merci d'avance pour votre support.

Salutations.

15exemple.xlsx (10.23 Ko)

Bonjour Narcisse MVOULA, le forum,

Il doit y avoir plus court mais cela fonctionne :

=STXT(A2;TROUVE("-";A2;TROUVE("-";A2)+1)+1;TROUVE("-";A2;TROUVE("-";A2;TROUVE("-";A2)+1)+1)-TROUVE("-";A2;TROUVE("-";A2)+1)-1)

Cordialement.

AL 22

Bonjour à tous,

Avec power query

7exemple.xlsx (18.67 Ko)

Bonjour,
Une formule ?
Cdlt.

14exemple.xlsx (11.44 Ko)
=TRANSPOSE(FILTRE.XML("<t><s>"&SUBSTITUE([@Code];"-";"</s><s>")&"</s></t>";"//s[positioN()=3]"))

Bonjour à tous,

Une autre façon de faire avec PowerQuery, un peu originale...

9exemple-1.xlsx (18.29 Ko)

Bonsoir,

Bonjour à tous,

Une autre façon de faire avec PowerQuery, un peu originale...

9exemple-1.xlsx (18.29 Ko)

Ouahhh

Pour être originale...

Sinon, juste en utilisant le menu...

let
  Source = Excel.CurrentWorkbook(){[Name = "Tableau1"]}[Content],
   #"Texte inséré entre les délimiteurs" = Table.AddColumn(Source, "Texte entre les délimiteurs", each Text.BetweenDelimiters([Code], "-", "-", 1, 0), type text)
in
    #"Texte inséré entre les délimiteurs"

en images :

image image

Bonne soirée

Bonsoir à tous !

Pour la diversité des approches Power Query ....

let
  Source = Excel.CurrentWorkbook(){[Name = "Tableau1"]}[Content],
  Rempl = Table.ReplaceValue(Source,each [Code], each Text.Split([Code],"-"){2},Replacer.ReplaceText,{"Code"})
in
  Rempl
image

Bonsoir,

Tant que l'on est dans le PQ :

= Table.TransformColumns(Source,{ "Code", each Text.Split(_,"-"){2}})

A+

Bonjour,

Pour faire simple

Function EXTBK(s$)
   EXTBK = Split(s, "-")(2)
End Function

Ensuite (Colonne B) :

=EXTBK([@Code])

A+

Bonjour à Tous,

Merci pour vos retours très inspirants, je vais pouvoir avancer dans mon projet.

@Jean Eric, ta formule est simple et donne exactement le résultat que je souhaite.

Merci à tous et vive le forum.

Bonjour à tous !

Bien ...

Je vous remercie de ce retour et bon courage pour la suite.

Bonjour à tous de nouveau !

Pour le "fun", deux méthodes, réservées à Microsoft 365 (Insider ?) :

  1. Exclusivement réalisée avec la fonction REGEXTRACT :
    =REGEXEXTRACT(A5;"(?:[\w ]+.*?){2}([\w ]+)";2)
  2. La seconde, d'un abord plus simple, utilise une autre fonction (CHOISIRCOLS), donc moins drôle () :
    =CHOISIRCOLS(REGEXEXTRACT(A5;"[\w ]+";1);3)
Rechercher des sujets similaires à "extraire partie texte"