Skip to main content

Kutools voor Office — Eén Suite. Vijf Tools. Verwezenlijkt Meer.

Genereer willekeurig getal op basis van een gegeven gemiddelde en standaarddeviatie in Excel

Author Sun Last modified

Het genereren van een reeks willekeurige getallen met een gespecificeerd gemiddelde en standaarddeviatie is een veelvoorkomende vereiste in gebieden zoals statistische simulatie, het testen van algoritmen of het modelleren van processen in sectoren zoals financiën, techniek en onderwijs. Echter, Excel biedt geen direct ingebouwde functie om zo'n lijst met willekeurige getallen te genereren die afgestemd zijn op zowel een gegeven gemiddelde als standaarddeviatie. Als je regelmatig random testdata moet creëren die statistisch overeenkomt met bepaalde kenmerken, kan het begrijpen van hoe dit te bereiken de efficiëntie van je workflow en de kwaliteit van je data enorm verbeteren.

In deze tutorial introduceren we praktische manieren om willekeurige getallen te genereren op basis van het gemiddelde en de standaarddeviatie die je specificeert, met gedetailleerde stap-voor-stap instructies, uitleg van formuleparameters en experts tips voor foutpreventie en probleemoplossing. Bovendien bieden we een VBA-macro-oplossing voor gebruikers die dit proces automatisch willen uitvoeren of grote datasets efficiënt willen genereren.

Genereer willekeurig getal op basis van gegeven gemiddelde en standaarddeviatie

VBA-code - Genereer willekeurige getallen met gespecificeerd gemiddelde en standaarddeviatie


arrow blue right bubble Genereer willekeurig getal op basis van gegeven gemiddelde en standaarddeviatie

In Excel kun je een set willekeurige getallen maken die passen bij je gewenste gemiddelde en standaarddeviatie door een combinatie van standaardfuncties toe te passen. Volg deze stappen voor een oplossing die geschikt is voor kleine tot middelgrote datasets of voor snelle, ad-hoc behoeften:

1. Voer eerst je doelgemiddelde en standaarddeviatie in twee aparte lege cellen in. Voor duidelijkheid en organisatie kun je bijvoorbeeld cel B1 gebruiken voor je vereiste gemiddelde en cel B2 voor je vereiste standaarddeviatie. Zie screenshot:
 type mean and standard deviation into two empty cells

2. Om de initiële gerandomiseerde gegevens te maken, ga je naar cel B3 en voer je de volgende formule in:

=NORMINV(RAND(),$B$1,$B$2)
Nadat je de formule hebt ingevoerd, sleep je de vulgreep omlaag om zoveel rijen te vullen als je nodig hebt voor je random dataset. Elke cel genereert een waarde op basis van het gespecificeerde gemiddelde en standaarddeviatie.
enter a formula and fill to other cells

Tip: Binnen de formule =NORMINV(RAND(),$B$1,$B$2):

  • RAND() produceert elke keer dat het werkblad herberekend wordt een ander willekeurig getal tussen 0 en 1.
  • $B$1 verwijst naar het gemiddelde dat je hebt gespecificeerd.
  • $B$2 verwijst naar de gewenste standaarddeviatie.
Voor moderne versies van Excel (2010 en later), overweeg dan om =NORM.INV(RAND(),$B$1,$B$2)te gebruiken, wat functioneel hetzelfde is maar gebruik maakt van bijgewerkte functienamen.

3. Om te controleren of je gegenereerde getallen statistisch overeenkomen met je bedoelde gemiddelde en standaarddeviatie, gebruik je de volgende formules om de werkelijke waarden van je gegenereerde steekproef te berekenen. Bereken in cel D1 het steekproefgemiddelde met:

=AVERAGE(B3:B16)
Bereken in D2 de steekproefstandaarddeviatie met:
=STDEV.P(B3:B16)
apply this AVERAGE function to calculate the mean
apply this STDEV.P function to calculate the standard deviation

Tip:

  • B3:B16 is slechts een voorbeeldbereik. Pas dit aan op basis van hoeveel willekeurige waarden je hebt gegenereerd in Stap 2.
  • Een grotere willekeurige steekproef resulteert in een werkelijk gemiddelde en standaarddeviatie die dichter bij je gespecificeerde waarden liggen, vanwege de wet van de grote aantallen.

4. Om je reeks verder aan te passen zodat deze exact overeenkomt met je bedoelde gemiddelde en standaarddeviatie, normaliseer je je initiële willekeurige waarden. Voer in cel D3 de volgende formule in:

=$B$1+(B3-$D$1)*$B$2/$D$2
Sleep de vulgreep omlaag door zoveel rijen als je willekeurige getallen hebt. Deze formule standaardiseert je initiële waarden en schaalt ze precies om aan het gemiddelde en de standaarddeviatie in B1 en B2 te voldoen.
enter a fromula to generate the real random numbers

Tip:

  • B1 is je vereiste gemiddelde.
  • B2 is je vereiste standaarddeviatie.
  • B3 is de originele willekeurige waarde.
  • D1 is het gemiddelde van die originele willekeurige waarden.
  • D2 is de standaarddeviatie van die originele willekeurige waarden.

Je kunt nu bevestigen dat de uiteindelijke set waarden aan je vereisten voldoet door hun gemiddelde en standaarddeviatie opnieuw te berekenen voor kwaliteitsborging en documentatie.

5. Bereken in cel D17 het gemiddelde van je definitieve reeks willekeurige getallen met de volgende formule:

=AVERAGE(D3:D16)
Bereken vervolgens in cel D18 de standaarddeviatie met de volgende formule:
=STDEV.P(D3:D16)
check the mean and standard deviation of the final random number series with formulas

Tip: D3:D16 verwijst naar je definitieve bereik van willekeurige getallen.

Probleemoplossing:

  • Als je een #WAARDE! fout ziet, controleer dan alle gerefereerde celbereiken en zorg ervoor dat geen formules verwijzen naar lege of ongeldige cellen.
  • Als de formule blijft veranderen elke keer dat je herberekent, selecteer dan de definitieve willekeurige getallen, kopieer ze en gebruik Plakken Speciaal > Waarden om verdere updates te voorkomen.
  • Onthoud dat willekeurige generatoren in Excel afhankelijk zijn van herberekening, dus het opslaan van statische resultaten is noodzakelijk wanneer consistentie cruciaal is.

VBA-code - Genereer willekeurige getallen met gespecificeerd gemiddelde en standaarddeviatie

Voor scenario's waarin je snel een grote hoeveelheid willekeurige data moet produceren die overeenkomt met een gespecificeerd gemiddelde en standaarddeviatie—vooral in herhalende, geautomatiseerde of grote hoeveelheden—aanbiedt een VBA-macro een tijdbesparende oplossing. Met slechts één uitvoering kun je een volledige dataset rechtstreeks in je werkboek creëren, wat handmatige herhaling reduceert en fouten bij het kopiëren van formules minimaliseert.

Deze aanpak is geschikt voor:

  • Automatisch genereren van willekeurige datasets voor simulaties, stress tests of educatieve demonstraties.
  • Situaties waarin je de output-indeling wilt standaardiseren met minimale handmatige tussenkomst.
  • Gebruikers die bekend zijn met het gebruik van de VBA-editor in Excel.

In vergelijking met formulemethoden kan VBA ook dynamische aanpassingen of integratie met meer complexe workflows toestaan, maar houd er rekening mee dat macro's moeten worden ingeschakeld in je werkboek en mogelijk expliciet moeten worden opgeslagen in "macro-enabled" .xlsm-formaat.

1. Klik op de Excel-ribbon op Ontwikkelaarshulpmiddelen (als deze niet zichtbaar is, schakel deze dan in via Bestand > Opties > Aanpassen lint), selecteer dan Visual Basic. In het venster Visual Basic for Applications klik je op Invoegen > Module en kopieer je de volgende code in het lege modulevenster:

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. Klik op de Run button Uitvoeren knop (of druk op F5) om de macro te starten. Een dialoogvenster vraagt je om het bereik te selecteren waar je de willekeurige getallen wilt uitvoeren (bijvoorbeeld, selecteer A1:A100 voor 100 waarden). Vervolgens wordt je gevraagd om het gewenste gemiddelde en de standaarddeviatie in te voeren. De macro zal het bereik vullen met willekeurige getallen die overeenkomen met je specificaties.

Tips en Probleemoplossing:

  • VBA gebruikt Excel's NormInv-functie om normaal verdeelde getallen te genereren—controleer altijd of je versie dit ondersteunt; voor oudere Excel-versies moet de functie mogelijk NORMINV zijn.
  • De random seed wordt ingesteld met Randomize voor variabele resultaten bij elke uitvoering.
  • Als je reproduceerbare resultaten wilt, commentarieer of verwijder dan de Randomize-regel.
  • De macro overschrijft alle bestaande gegevens in het geselecteerde uitvoerbereik, dus zorg ervoor dat je een leeg gebied selecteert indien nodig.
  • Als je ongeschikte waarden invoert (bijvoorbeeld een negatieve of nul standaarddeviatie), zal de macro niet doorgaan en een waarschuwingstekst tonen.

Gerelateerde Artikelen:

Beste productiviteitstools voor Office

🤖 Kutools AI Assistent: Transformeer data-analyse door: Intelligente uitvoering |Code genereren |Aangepaste formules maken |Gegevens analyseren en grafieken genereren |Kutools functies aanroepen
Populaire functies: Dubbele waarden markeren | Verwijder lege rijen | Kolommen of cellen samenvoegen zonder gegevensverlies |   Afronden zonder formule...
Super ZOEKEN: Meervoudig-criteria opzoeken | Meervoudige waarde opzoeken | Meervoudig-blad opzoeken | Fuzzy Match....
Geavanceerde keuzelijst: Keuzelijst snel maken | Afhankelijke keuzelijst | Meervoudige selectie in keuzelijst....
Kolombeheer: Specifiek aantal kolommen toevoegen | Kolommen verplaatsen | Zichtbaarheidsstatus van verborgen kolommen wisselen | Bereik & kolommen vergelijken...
Uitgelichte functies: Rasterfocus | Ontwerpweergave | Verbeterde formulebalk | Werkboek- & Werkbladbeheer | AutoTekstbibliotheek | Datumkiezer | Gegevens samenvoegen | Cellen coderen/decoderen | E-mail verzenden via lijst | Superfilter | Speciaal filter (filter cellen met vetgedrukt/cursief/doorhalen...)...
Top15 gereedschapssets:12 teksttools (Tekst toevoegen, Specifieke tekens verwijderen, ...) | 50+ grafiek typen (Gantt-diagram, ...) | 40+ praktische formules (Leeftijd berekenen op basis van geboortedatum, ...) | 19 invoegtools (QR-code invoegen, Afbeelding invoegen vanaf pad, ...) | 12 conversietools (Omzetten naar woorden, Valutaconversie, ...) | 7 Samenvoeg- & splitsgereedschappen (Geavanceerd samenvoegen van rijen, Cellen splitsen, ...) | ... en meer
Gebruik Kutools in je voorkeurstaal – ondersteunt Engels, Spaans, Duits, Frans, Chinees en meer dan40 andere talen!

Verbeter je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te kiezen die je het meest nodig hebt...


Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger

  • Activeer tabbladbewerking en -lezen in Word, Excel, PowerPoint, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
  • Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!

Alle Kutools-invoegtoepassingen. Eén installatieprogramma

Kutools for Office-suite bundelt invoegtoepassingen voor Excel, Word, Outlook & PowerPoint plus Office Tab Pro, ideaal voor teams die werken met Office-toepassingen.

Excel Word Outlook Tabs PowerPoint
  • Alles-in-één suite — invoegtoepassingen voor Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Eén installatieprogramma, één licentie — in enkele minuten geïnstalleerd (MSI-ready)
  • Werkt beter samen — gestroomlijnde productiviteit over meerdere Office-toepassingen
  • 30 dagen volledige proef — geen registratie, geen creditcard nodig
  • Beste prijs — bespaar ten opzichte van losse aanschaf van invoegtoepassingen