KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Générer un nombre aléatoire selon une moyenne et un écart-type donnés dans Excel

AuteurSun Date de modification

Générer un ensemble de nombres aléatoires avec une moyenne et un écart-type spécifiques est une exigence courante dans des domaines tels que la simulation statistique, les tests d’algorithmes ou la modélisation de processus en finance, en ingénierie et en éducation. Toutefois, Excel ne dispose pas de fonction intégrée permettant de produire directement une telle série de nombres aléatoires ajustée à la fois à une moyenne et à un écart-type donnés. Si vous avez régulièrement besoin de créer des données de test aléatoires correspondant précisément à des caractéristiques statistiques définies, maîtriser cette méthode peut considérablement optimiser votre flux de travail et renforcer la qualité de vos données.

Dans ce tutoriel, découvrez des méthodes pratiques pour générer des nombres aléatoires selon la moyenne et l’écart-type de votre choix. Vous y trouverez des instructions détaillées pas à pas, des explications claires sur les paramètres des formules utilisées, ainsi que des conseils d’experts pour éviter les erreurs courantes et résoudre rapidement les problèmes. Nous proposons également une macro VBA prête à l’emploi, idéale pour automatiser cette tâche ou produire efficacement de grands volumes de données.

Générer un nombre aléatoire selon une moyenne et un écart-type donnés

Code VBA – Générer des nombres aléatoires avec une moyenne et un écart-type spécifiés


flèche bleue vers la droite dans une bulleGénérer un nombre aléatoire selon une moyenne et un écart-type donnés

Dans Excel, vous pouvez créer un ensemble de nombres aléatoires correspondant à la moyenne et à l’écart-type souhaités en combinant plusieurs fonctions standard. Suivez ces étapes pour une solution adaptée aux jeux de données de petite ou moyenne taille, ou aux besoins ponctuels :

1. Commencez par saisir votre moyenne cible et votre écart-type dans deux cellules vides distinctes. Pour plus de clarté, supposons que vous utilisiez la cellule B1 pour la moyenne souhaitée et la cellule B2 pour l’écart-type souhaité. Voir la capture d’écran :
saisir la moyenne et l’écart type dans deux cellules vides

2. Pour générer les données aléatoires initiales, positionnez-vous dans la cellule B3 et saisissez la formule suivante :

=NORMINV(RAND(),$B$1,$B$2)
Après avoir saisi la formule, faites glisser la poignée de recopie vers le bas pour remplir autant de lignes que nécessaire dans votre jeu de données aléatoires. Chaque cellule générera une valeur basée sur la moyenne et l’écart-type que vous avez spécifiés.
saisir une formule et la recopier vers d’autres cellules

Conseil :Dans la formule =NORMINV(RAND();$B$1;$B$2):

  • RAND() renvoie une valeur aléatoire différente comprise entre 0 et 1 à chaque recalcul de la feuille de calcul.
  • $B$1 fait référence à la valeur moyenne que vous avez spécifiée.
  • $B$2 fait référence à l’écart-type souhaité.
Pour les versions récentes d’Excel (2010 et ultérieures), envisagez d’utiliser =NORM.INV(RAND();$B$1;$B$2), qui est fonctionnellement identique mais utilise les noms de fonctions mis à jour.

3. Pour vérifier que vos nombres générés correspondent statistiquement à la moyenne et à l’écart-type souhaités, utilisez les formules suivantes afin de calculer la valeur réelle de votre échantillon généré. Dans la cellule D1, calculez la moyenne de l’échantillon à l’aide de la formule :

=AVERAGE(B3:B16)
Dans la cellule D2, calculez l’écart-type de l’échantillon avec :
=STDEV.P(B3:B16)
appliquer cette fonction MOYENNE pour calculer la moyenne
appliquer cette fonction ECARTYPE.POUR pour calculer l’écart type

Conseil :

  • B3:B16 est simplement une plage d’exemple. Ajustez-la en fonction du nombre de valeurs aléatoires générées à l’étape 2.
  • Un échantillon aléatoire plus grand permet d’obtenir une moyenne et un écart-type qui se rapprochent davantage des valeurs spécifiées, conformément à la loi des grands nombres.

4. Pour affiner davantage votre série et l’ajuster précisément à la moyenne et à l’écart-type souhaités, normalisez vos valeurs aléatoires initiales. Dans la cellule D3, saisissez la formule suivante :

=$B$1+(B3-$D$1)*$B$2/$D$2
Faites glisser la poignée de recopie vers le bas sur autant de lignes qu’il y a de nombres aléatoires. Cette formule normalise vos valeurs initiales et les ajuste avec précision pour qu’elles correspondent à la moyenne et à l’écart-type indiqués en B1 et B2.
saisir une formule pour générer des nombres aléatoires réels

Conseil :

  • B1 correspond au niveau requis.
  • B2 correspond à l’écart-type requis.
  • B3 correspond à la valeur aléatoire initiale.
  • D1 correspond à la moyenne de ces valeurs aléatoires initiales.
  • D2 correspond à l’écart type de ces valeurs aléatoires initiales.

Vous pouvez désormais confirmer que l’ensemble final de valeurs répond à vos exigences en recalculant leur moyenne et leur écart-type, pour un contrôle qualité rigoureux et une documentation claire.

5. Dans la cellule D17, calculez la moyenne de votre ensemble final de nombres aléatoires à l’aide de la formule suivante :

=AVERAGE(D3:D16)
Puis, dans la cellule D18, calculez l’écart-type à l’aide de la formule suivante :
=STDEV.P(D3:D16)
vérifier la moyenne et l’écart type de la série finale de nombres aléatoires à l’aide de formules

Conseil : D3:D16 correspond à la plage de vos nombres aléatoires finalisés.

Dépannage :

  • Si vous voyez une erreur #VALEUR!, examinez attentivement toutes les plages de cellules référencées et assurez-vous qu’aucune formule ne fait référence à des cellules vides ou non valides.
  • Si la formule continue de changer à chaque recalcul, sélectionnez les nombres aléatoires finaux, copiez-les, puis utilisez Collage spécial > Valeurs pour empêcher toute mise à jour ultérieure.
  • N’oubliez pas que les générateurs aléatoires dans Excel dépendent du recalcul ; il est donc essentiel d’enregistrer des résultats statiques dès que la cohérence est requise.

Code VBA – Générer des nombres aléatoires avec une moyenne et un écart-type spécifiés

Lorsque vous devez générer rapidement un grand volume de données aléatoires correspondant à une moyenne et un écart-type précis — notamment dans des scénarios répétitifs, automatisés ou à haute intensité — une macro VBA s’impose comme une solution efficace et gain de temps. En une seule exécution, elle crée un jeu de données complet directement dans votre classeur, éliminant ainsi les tâches manuelles fastidieuses et les erreurs liées à la copie de formules.

Cette approche convient aux situations suivantes :

  • Générez automatiquement des jeux de données aléatoires pour vos simulations, tests de résistance ou démonstrations pédagogiques.
  • Situations où vous souhaitez standardiser le format de sortie tout en minimisant l’intervention manuelle.
  • Utilisateurs à l’aise avec l’utilisation de l’éditeur VBA dans Excel.

Comparée aux méthodes basées sur des formules, la solution VBA permet également des ajustements dynamiques et une intégration dans des flux de travail plus complexes — à condition toutefois que les macros soient activées dans votre classeur et que celui-ci soit éventuellement enregistré au format prenant en charge les macros (.xlsm).

1. Dans le ruban Excel, cliquez sur Outils de développement(si cette option n’est pas visible, activez-la via)Fichier > Options > Personnaliser le ruban), puis sélectionnez Visual Basic. Dans la fenêtre Visual Basic pour Applications, cliquez sur Insertion > Module, puis copiez le code suivant dans la fenêtre du module vide :

Sub GenerateRandomNumbersWithMeanStd()
    Dim outputRange As Range
    Dim meanValue As Double, stdDevValue As Double
    Dim numItems As Long, i As Long
    Dim xTitleId As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set outputRange = Application.InputBox("Select the output range", xTitleId, Type:=8)
    meanValue = Application.InputBox("Enter the mean value", xTitleId, "", Type:=1)
    stdDevValue = Application.InputBox("Enter the standard deviation", xTitleId, "", Type:=1)
    
    If outputRange Is Nothing Or meanValue = 0 Or stdDevValue = 0 Then
        MsgBox "Please ensure you have specified all required parameters.", vbExclamation, "KutoolsforExcel"
        Exit Sub
    End If
    
    numItems = outputRange.Count
    Randomize
    
    For i = 1 To numItems
        outputRange.Cells(i).Value = Application.WorksheetFunction.NormInv(Rnd, meanValue, stdDevValue)
    Next i
End Sub

2. Cliquez sur le bouton Bouton Exécuter Exécuter(ou appuyez sur)F5) pour lancer la macro. Une boîte de dialogue s’ouvrira alors pour vous demander de sélectionner la plage dans laquelle insérer les nombres aléatoires (par exemple, A1:A100 pour générer 100 valeurs). Vous devrez ensuite indiquer la moyenne et l’écart-type souhaités. La macro remplira automatiquement la plage sélectionnée avec des nombres aléatoires conformes à vos critères.

Conseils et dépannage :

  • VBA utilise la fonction NormInv d’Excel pour générer des nombres distribués selon une loi normale — assurez-vous toujours que votre version la prend en charge ; dans les anciennes versions d’Excel, cette fonction pourrait s’appeler NORMINV.
  • La graine aléatoire est définie avec Randomize afin d’obtenir des résultats variés à chaque exécution.
  • Si vous souhaitez obtenir des résultats reproductibles, commentez ou supprimez la ligne Randomize.
  • La macro écrasera toutes les données existantes dans la zone de placement de la liste sélectionnée ; veillez donc à choisir une zone vide si nécessaire.
  • Si vous saisissez des valeurs inappropriées (par exemple un écart-type négatif ou nul), la macro ne s’exécutera pas et affichera un message d’avertissement.

Articles associés :

Meilleurs outils de productivité Office

🤖Kutools IA Aide: Révolutionnez Analyse des données grâce à :Exécution intelligente   |  Générez du code|  Créez formules personnalisées  |  Analysez des données et générez des graphiques|  Appelez Fonctions améliorées
Fonctionnalités populaires:Rechercher, mettre en surbrillance ou Marquer les doublons   |  Supprimer les lignes vides   |  Combinez les colonnes ou cellules sans perdre de données   |   Arrondi sans utiliser de formule...
Super RECHERCHEV:RechercheValeurs avec critères multiples  |  RechercheValeurs avec valeurs multiples  |   RechercheValeurs dans plusieurs feuilles   |   Correspondance floue....
Liste déroulante avancée:Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple....
Gestionnaire de colonnes:Ajouter un nombre précis de colonnes|Déplacer des colonnes|Basculer la visibilité des colonnes masquées|Comparer des plages et des colonnes...
Fonctionnalités vedettes:Mise au point de la grille   |  Vue de conception   |Barre de formule améliorée   | Gestionnaire de classeurs et de feuilles   |  Bibliothèque de ressources(Texte automatique)|  Sélecteur de date   |  Consolider les feuilles de calcul  |  Chiffrer/Déchiffrer les cellules   | Envoyer des e-mails par liste   |  Super Filtre   |   Filtre spécial(Filtrer les cellules avec une police en gras/italique/barré...) ...
… et bien plus encore… et plus encore:(,)Supprimer des caractères spécifiques, ...)|   50+Typesde graphiques(, ...)|   40+ Formules pratiques(Calculer l'âge en fonction de la date de naissance, ...)|   19 Outils d’insertion(,Insérer une image depuis un chemin , ...)|   de conversion (Convertir en mots,Conversion de devises, ...)|Fusionner et scinder   (Fusion avancée des lignes,Diviser les cellules , ...)|, ...)   |
Utilisez Kutools dans la langue de votre choix – disponible en anglais, espagnol, allemand, français, chinois et 40+ autres langues !

Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile

  • Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !

Tous les compléments Kutools. Un seul installateur

Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.

ExcelWordOutlookTabsPowerPoint
  • Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
  • Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
  • Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
  • Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
  • Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels