Function SommeTexte(Données As Range, Séparateur As String)
Dim Tablo As Variant
Dim i, j
Dim ValString As String
Dim Total As Double
'Génère un tableau fictif à partir des données.
'Chaque élément du tableau est séparé par le séparateur
'définit dans le deuxième argument de la fonction
Tablo = Split(Données, Séparateur, -1)
'Pour chaque élément du tableau
For i = 0 To UBound(Tablo)
'Je compte le nombre de caractère de la chaine
ValString = ''
'pour chaque caractère
For j = 1 To Len(Tablo(i))
'si c'est une valeur numérique
If IsNumeric.Mid(Tablo(i), j, 1) Then
'je mémorise les caractères répondant aux critères
ValString = ValString & Mid(Tablo(i), j, 1)
End If
Next j
'Puis je convertis la chaine en nombre et totalise ce nombre au
'précédent total
Total = Total + CDbl(ValString)
Next i
SommeTexte = Total
End Function