XL pour MAC Entre le 3eme tiret et le dernier tiret

cloum1

XLDnaute Nouveau
Bonjour
J'imagine que la question a été abordé dans un cas similaire mais étant une bille avec les formule je n'arrive pas à extrapoler avec des solutions proches utilisant des fonctions imbriquées.
Pourriez vous m'aider pour une formule qui permettrait d'extraire tous les caractères présents dans une cellule entre le 3eme tiret et le dernier tiret ? la chaine est de longueur variable ainsi que le nombre de tirets

Merci !
 

cloum1

XLDnaute Nouveau
Bonjour
sujet similaire abordé tres récement
J'ai essayé ca mais ca ne marche pas
=STXT(A1;SEARCH("-";A1;SEARCH("-";A1;SEARCH("-";A1)+1)+1)+1;SEARCH("$";SUBSTITUE(A1;"-";"$";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"-";""))))-SEARCH("-";A1;SEARCH("-";A1;SEARCH("-";A1)+1)+1)-1)
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous :),

Avec la formule matricielle suivante en B2 à copier vers le bas :
=STXT(A2;(PETITE.VALEUR(SI(STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)="-";LIGNE(INDIRECT("1:"&NBCAR(A2)));"");3)+1);GRANDE.VALEUR(SI(STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)="-";LIGNE(INDIRECT("1:"&NBCAR(A2)));"");1)-(PETITE.VALEUR(SI(STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)="-";LIGNE(INDIRECT("1:"&NBCAR(A2)));"");3)+1))

1699555749613.png
 

Pièces jointes

  • cloum1- extraction entre 3 et dernier tiret- v1.xlsx
    11 KB · Affichages: 4
Dernière édition:

job75

XLDnaute Barbatruc
Bonsoir à tous,

On peut aussi utiliser cette fonction VBA :
VB:
Function Tirets(x) As String
Dim s, a, i
s = Split(x, "-")
If UBound(s) < 4 Then Exit Function
ReDim a(UBound(s) - 4)
For i = 0 To UBound(a): a(i) = s(i + 3): Next
Tirets = Join(a, "-")
End Function
Bonne nuit.
 

Pièces jointes

  • Tirets.xlsm
    14.3 KB · Affichages: 3

Jacky67

XLDnaute Barbatruc
Bonjour
J'imagine que la question a été abordé dans un cas similaire mais étant une bille avec les formule je n'arrive pas à extrapoler avec des solutions proches utilisant des fonctions imbriquées.
Pourriez vous m'aider pour une formule qui permettrait d'extraire tous les caractères présents dans une cellule entre le 3eme tiret et le dernier tiret ? la chaine est de longueur variable ainsi que le nombre de tirets

Merci !
Bonjour à tous
Ceci semble aussi fonctionner (Tester sur pc)
Code:
=STXT(A1;TROUVE("£";SUBSTITUE(A1;"-";"£";3))+1;TROUVE("¤";SUBSTITUE(A1;"-";"¤";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"-";""))))-(TROUVE("£";SUBSTITUE(A1;"-";"£";3))+1))
 

Statistiques des forums

Discussions
315 096
Messages
2 116 172
Membres
112 676
dernier inscrit
little_b