Private Function Moyennecar(ByVal Arg2 As Range, Arg3 As Integer)
Dim Flag1 As Boolean
Flag1 = False
z = ""
Absc = Right(Arg2.Address, InStr(1, Right(Arg2.Address, 5), "$"))
Absc2 = Mid(Arg2.Address, InStr(2, Arg2.Address, "$") + 1, InStr(InStr(2, Arg2.Address, "$") + 1, Arg2.Address, "$") - (InStr(2, Arg2.Address, "$") + 2))
Ordo1 = Range(Mid(Arg2.Address, 2, InStr(2, Arg2.Address, "$") - 2) & "1").Column
Ordo2 = Range(Mid(Arg2.Address, InStr(5, Arg2.Address, "$") + 1, InStr(InStr(5, Arg2.Address, "$") + 1, Arg2.Address, "$") - 7) & "1").Column
Ordof = (Ordo2 - Ordo1) Mod Arg3
Ordof = Ordo2 - Ordof
nb = (((Ordof - Ordo1) / Arg3) + 1) * ((Absc - Absc2) + 1)
Dim k&
For k = Absc2 To Absc Step 1
Dim i&
For i = Ordo1 To Ordof Step Arg3
If Flag1 = False Then
z = Cells(k, i)
Flag1 = True
GoTo Borne
End If
z = z + Cells(k, i)
Borne:
Next i
Next k
Moyennecar = z / nb
End Function