Re,
Voilà une fonction personnalisée qui pourrait faire l'affaire :
Function EXTRACTENTRE(tx As String, c1 As String, c2 As String)
Dim T, i%
Application.Volatile
T = Split(Replace(Trim(tx), c1, c2 & Chr(135)), c2)
For i = 0 To UBound(T)
If Left(T(i), 1) = Chr(135) Then
T(i) = Replace(T(i), Chr(135), Chr(10))
Else
T(i) = ""
End If
Next i
T = Replace(Join(T, c2), c2, "")
EXTRACTENTRE = Replace(T, Chr(10), "", 1, 1)
End Function
S'utilise comme une fonction Excel ordinaire. On entre la formule :
=EXTRACTENTRE(A2;"(";")")
en lui désignant la référence de la cellule qui contient la chaîne, et les 2 caractères entre lesquels se trouvent les parties à extraire (pour ne pas être limité aux parenthèses dans l'utilisation de la fonction). On valide.
On valide également l'option de retour à la ligne automatique pour la cellule, de façon que lorsque plusieurs éléments sont à extraire, l'affichage se fasse avec retour à la ligne entre chaque élément extrait.
Cordialement.