Function SommePondérée(Plage As Range, Emploi As String, Demi As String, Pas As Integer) As Single
Application.Volatile
If Plage.Count Mod Pas <> 0 Then Exit Function
Dim Cellule As Range, I As Integer, J As Integer, Vérif As Boolean
For I = 1 To Plage.Count Step Pas
If Plage.Cells(1, I + 1) = Emploi Then
Vérif = False
For J = LBound(Split(Demi, ";")) To UBound(Split(Demi, ";"))
If Plage.Cells(1, I + 2) = Split(Demi, ";")(J) Then SommePondérée = SommePondérée + 1 / 2: Vérif = True
Next J
If Vérif = False Then SommePondérée = SommePondérée + 1
End If
Next I
End Function