Funktionen Slump

Gäller för
Access för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Returnerar ett värde av datatypen Single som innehåller ett slumptal.

Syntax

Rnd[(tal)]

Det valfria talargumentetär ett Single-uttryck eller ett giltigt numeriskt uttryck.

Returvärden

Om tal är Rnd genererar
Mindre än noll Samma tal varje gång, med tal som frö.
Större än noll Nästa slumptal i sekvensen.
Lika med noll Det senast genererade talet.
Ej levererad Nästa slumptal i sekvensen.

Kommentarer

Funktionen Rnd returnerar ett värde som är mindre än 1 men större än eller lika med noll.

Talets värde avgör hurRnd genererar ett slumptal:

För ett givet första frö genereras samma nummersekvens eftersom varje efterföljande anrop till funktionen Rnd använder det föregående talet som ett frö för nästa nummer i sekvensen.

Innan du ringer Rnd ska du använda Randomize-uttrycket utan ett argument för att initiera slumptalsgeneratorn med ett frö baserat på systemtimern.

Om du vill producera slumpmässiga heltal i ett givet område använder du den här formeln:

Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

Här är upperbound det högsta talet i området, och lowerbound är det lägsta talet i området.

Obs

Om du vill upprepa sekvenser av slumptal anropar du Rnd med ett negativt argument omedelbart innan du använder Randomize med ett numeriskt argument. Om du använder Randomize med samma värde för tal upprepas inte föregående sekvens.

Frågeexempel

Uttryck Resultat
SELECT ProductSales.ProductID, Rnd([Discount]) AS RandomNumbers FROM ProductSales; Returnerar produkt-ID tillsammans med slumptal i kolumnen RandomNumbers.

VBA-exempel

Obs

I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Om du vill läsa mer om hur man använder VBA, kan du välja Info för utvecklare i listrutan bredvid Sök och sedan skriva en eller flera söktermer i sökrutan.

I det här exemplet används funktionen Rnd för att generera ett slumpmässigt heltal från 1 till 6.

Dim MyValue
' Generate random value between 1 and 6.
MyValue = Int((6 * Rnd) + 1)