macro générer variables aléatoires

  • Initiateur de la discussion Initiateur de la discussion marskng
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

marskng

Guest
bonjour
En pièce jointe un tableau rempli de pourcentages avec deux contraintes:
-les pourcentages doivent être positifs
-les totaux des colonnes doivent être=100%

Je voudrais remplir un tableau vide en générant des pourcentages aléatoires satisfaisant les 2 contraintes.

Merci d'avance
 

Pièces jointes

Re : macro générer variables aléatoires

Bonjour,

voici une proposition avec une macro. Modifier au besoin la plage dans la macro Exemple.

VB:
Sub Exemple()
   Call RemplirTableau(Range("B19:HT21"))
End Sub

Sub RemplirTableau(rg As Range)
   Dim ar
   Dim i As Long, j As Long
   Dim Tot As Double
   
   ReDim ar(1 To rg.Rows.Count, 1 To rg.Columns.Count)
   
   rg.FormulaR1C1 = "=rand()"
   ar = rg.Value
   
   For j = 1 To UBound(ar, 2)
         Tot = Application.Sum(Application.Index(ar, , j))
      For i = 1 To UBound(ar, 1)
         ar(i, j) = ar(i, j) / Tot
      Next i
   Next j
   
   rg = ar
   
End Sub
 
Re : macro générer variables aléatoires

Bonjour,

voici une proposition avec une macro. Modifier au besoin la plage dans la macro Exemple.

VB:
Sub Exemple()
   Call RemplirTableau(Range("B19:HT21"))
End Sub

Sub RemplirTableau(rg As Range)
   Dim ar
   Dim i As Long, j As Long
   Dim Tot As Double
   
   ReDim ar(1 To rg.Rows.Count, 1 To rg.Columns.Count)
   
   rg.FormulaR1C1 = "=rand()"
   ar = rg.Value
   
   For j = 1 To UBound(ar, 2)
         Tot = Application.Sum(Application.Index(ar, , j))
      For i = 1 To UBound(ar, 1)
         ar(i, j) = ar(i, j) / Tot
      Next i
   Next j
   
   rg = ar
   
End Sub

Merci infiniment Grand Chaman Excel
 
Re : macro générer variables aléatoires

Bonjour
Et pour le même fichier, s'il vous plait, mais avec des contraintes différentes soit:
-les deux premières lignes du tableau 19 et 20 , soient des pourcentages alea négatifs
-la troisième ligne 21 des pourcentages positifs
-la somme des totaux 100%

Merci d'avance
 
Re : macro générer variables aléatoires

Bonsour®
😎
une proposition sans macro exclusivement en formule...
appuyer sur F9 pour une autre répartition

faire une copie spéciale valeur vers une autre feuille pour figer les résultats...
Capture.jpg
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour