Re : Extraction d'Initiales Complexe
Bonjour, deux autres possibilités par vba, piste à creuser.
Function initiale(c As Range) As String
b = Len(c)
For a = 1 To b
If Asc(Mid(c, a, 1)) < 97 Then
If Asc(Mid(c, a, 1)) <> 45 And Asc(Mid(c, a, 1)) <> 32 Then
d = d & Mid(c, a, 1)
End If
End If
Next
initiale = Trim(d)
End Function
ou
Sub rgxp()
Dim reg As Object
Dim n, nn
Set reg = CreateObject("vbscript.regexp")
reg.Global = True
reg.ignorecase = True
reg.Pattern = "[A-Z]*"
For a = 2 To Feuil1.UsedRange.Rows.Count
d = ""
Set nn = reg.Execute(Feuil1.Cells(a, 1))
For Each n In nn
d = d & Left(n, 1)
Next n
Feuil1.Cells(a, 3) = Trim(d)
Next a
End Sub