bonjour,
une solution via une fonction personnalisée
Function splitmontant(montant, n)
Dim t()
Application.Volatile
ReDim t(0 To n - 1, 0 To 0)
Randomize Timer
Do
Total = 0
For i = 0 To n - 2
t(i, 0) = aleatoire(0, montant - Total)
Total = Total + t(i, 0)
Next i
t(n - 1, 0) = montant - Total
Loop Until t(n - 1, 0) > 0
splitmontant = t
End Function
Function aleatoire(borne_inférieure, borne_supérieure)
aleatoire = Int(Rnd() * (borne_supérieure - borne_inférieure + 1)) + borne_inférieure
End Function
appel de la fonction en excel
=splitmontant(montant;nombre)
validation matricielle (avec ctr-shift-entree) si version excel <365