Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

répartition aléatoire

3 réponses
Avatar
BSH77
Bonjour à toutes et à tous

voilà mon problème : j'ai un certain nombre de personne et un total, je
voudrais répartir ce total à ces personnes d'une maniere complétement
aléatoire. Bien sur, en faisant la somme des ces personnes on doit retomber
sur le total.

Quelqu'un aurait-il une idée?
merci d'avance pour votre aide

3 réponses

Avatar
Daniel.C
Bonjour.
Avec les noms en A1:A15, le montant en C1 :
de D1 à D15 :
=ALEA()
en B1 :
=$C$1*D1/SOMME($D$1:$D$15)
à recopier vers le bas.
Cordialement.
Daniel
"BSH77" a écrit dans le message de news:

Bonjour à toutes et à tous

voilà mon problème : j'ai un certain nombre de personne et un total, je
voudrais répartir ce total à ces personnes d'une maniere complétement
aléatoire. Bien sur, en faisant la somme des ces personnes on doit
retomber
sur le total.

Quelqu'un aurait-il une idée?
merci d'avance pour votre aide


Avatar
BSH77
Merci beaucoup
c'est exactement ce que je voulais
bien à vous
bsh77


Bonjour.
Avec les noms en A1:A15, le montant en C1 :
de D1 à D15 :
=ALEA()
en B1 :
=$C$1*D1/SOMME($D$1:$D$15)
à recopier vers le bas.
Cordialement.
Daniel
"BSH77" a écrit dans le message de news:

Bonjour à toutes et à tous

voilà mon problème : j'ai un certain nombre de personne et un total, je
voudrais répartir ce total à ces personnes d'une maniere complétement
aléatoire. Bien sur, en faisant la somme des ces personnes on doit
retomber
sur le total.

Quelqu'un aurait-il une idée?
merci d'avance pour votre aide







Avatar
Youky
Salut ,
a tester si cela te va,
exemple j'ai mis 10 par personne, si tu mets 20 personnes, total = 200 pour
8 = 80
dans une feuille vierge faire un bouton
Youky

Private Sub CommandButton1_Click()
Dim sac(1000) As Integer
Randomize
[A:A].ClearContents
np = InputBox("entrer le nb de personnes")
If np = "" Then Exit Sub
For k = 1 To np
sac(k) = Int((100 * Rnd) + 1)
toto = toto + sac(k)
Next
toto = np * 10 / toto
For k = 1 To np - 1
Cells(k, 1) = Round((sac(k) * toto))
If Cells(k, 1) = 0 Then Cells(k, 1) = 1
Next
Cells(np, 1) = (np * 10) - Application.Sum(Range("A1:A" & np - 1))
End Sub

"BSH77" a écrit dans le message de news:

Bonjour à toutes et à tous

voilà mon problème : j'ai un certain nombre de personne et un total, je
voudrais répartir ce total à ces personnes d'une maniere complétement
aléatoire. Bien sur, en faisant la somme des ces personnes on doit
retomber
sur le total.

Quelqu'un aurait-il une idée?
merci d'avance pour votre aide