Sub Macro2()
Dim dl As Long 'déclare la variable dl (Dernière Ligne)
Dim pl As Range 'déclare la variable pl (PLage)
Dim cel As Range 'déclare la variable cel (Cellule)
Dim li As Byte 'déclare la variable li (LIgne)
Dim pat As Range 'déclare la variable pat (Plage À Traiter)
Dim cat As Range 'déclare la variable cat (Cellules À Traiter)
Dim i As Integer 'déclare la variable i (Incrément)
Dim vt As String 'déclare la variable vt (Valeur en Texte)
Dim vn As Integer 'déclare la variable vn (Valeur en Nombre)
With Sheets("Feuil2") 'prend en compte l'onglet "Feuil2"
dl = .Cells(Application.Rows.Count, 3).End(xlUp).Row 'définit la dernière ligne de la colonne 3 (C)
Set pl = .Range("C2:C" & dl) 'définit la plage pl
For Each cel In pl 'boucle 1 : sur toutes les cellules cel de la plage pl
vn = 0 'réinitialise la valeur en nombre vn
'si la cellule cel fait partie d'une plage fusionnée, définit le nombre de ligne li
If cel.MergeCells = True Then li = cel.MergeArea.Rows.Count Else li = 1
Set pat = cel.Offset(0, 1).Resize(li, 7) 'définit la plage à traiter
For Each cat In pat 'boucle 2 : sur chaque cellule à traiter cat de la plage à traiter pat
vt = "" 'initialise la valeur en texte
If cat.Value <> "" Then 'condition 1 : si la cellule à traiter cat n'est pas vide
For i = 1 To Len(cat.Value) 'boucle 3 sur tous les caractères ce cat
If IsNumeric(Mid(cat.Value, i, 1)) = True Then 'condition 2 : si le caractère est numérique
vt = vt & Mid(cat.Value, i, 1) 'définit ou redéfinit la valeur en texte
Else 'sinon (condition 2 donc si le caractère n'est pas un nombre
'si le caractère est un plus "+", definit ou redéfinit la valeur en nombre vn, réinitialise vt
If Mid(cat.Value, i, 1) = "+" Then vn = vn + CInt(vt): vt = ""
End If 'fin de la condition 2
Next i 'prochain caractère de la boucle 3
vn = vn + CInt(vt) 'définit ou redéfinit la valeur en nombre vn
End If 'fin de la condition 1
Next cat 'prochaine cellule à traiter cat de la boucle 2
cel.Value = vn 'place le total dans la cellule
Next cel 'prochaine cellule cel de la boucle 1
End With 'fin de la prise en compte de l'onglet "Feuil2"
End Sub