Gå til innhold

Anbefalte innlegg

Videoannonse
Annonse

lager en funksjon til deg jeg, lim inn denne i formen din, og kall den fra hvor du vil.. (denne vil kunne takle heltall)

 

funksjon:

Private Function RandomNumber(min As Long, max As Long) As Long
   Dim diff As Long
   diff = Abs(max - min) + 1
   Randomize
   RandomNumber = Int(Rnd() * diff) + min
End Function

 

så kan du kalle denne funksjonen fra hvor du vil i formen din, feks fra en knapp :

Private Sub Command1_Click()
   Dim MittTillfeldigeTall As Long
   MittTillfeldigeTall = RandomNumber(2, 5)
End Sub

 

Nå vil variabelen MittTillfeldigeTall få en tilfeldig verdi mellom 2 og 5

 

EDIT : for å gjøre dette litt enklere, så valgte jeg i dette eksempelet å putte Randomize metoden inn i funksjonen. Det er egentlig riktigere å fjerne den fra funksjonen, og bare bruke den når du starter opp applikasjonen, dvs. putte den i Form_Load-eventet

Endret av dga01
Lenke til kommentar

rnd er et random tall som windows lager. Randomize Timer genererer et nytt tall. Tallet er fra 0 til 1.

 

dette er feil.

 

rnd() er en funksjon som returnerer et tilfeldig (vel, egentlig ikke tilfeldig, men plukker et tall fra "seeden" til randomize-metoden) flyttall mellom 0 og 1

 

Randomize er en sub (eller metode om du vil) som genererer en ny "seed" (tallrekke), basert på klokkeslettet i datamaskinen din (hvis du ikke angir argument). Det opsjonelle argumentet (i ditt tilfelle Timer) er bare til forvirring, og har aldri skjønt hva jeg skal bruke denne til.

Lenke til kommentar

la oss si at jeg skal ha programmet til og velge mellom tre meldinger vi sier 1 : Hey 2: Halla og 3 : hey

 

ehh ja...

 

lag et nytt prosjekt, og lim inn alt dette i koden til formen din (kun dette) :

Option Explicit

Private Sub Form_Load()
   Randomize
   Select Case RandomNumber(1, 3)
       Case 1:
           MsgBox "Hei"
       Case 2:
           MsgBox "Halla"
       Case 3:
           MsgBox "Hey"
   End Select
End Sub

Private Function RandomNumber(min As Long, max As Long) As Long
   Dim diff As Long
   diff = Abs(max - min) + 1
   RandomNumber = Int(Rnd() * diff) + min
End Function

 

 

er det slik du vil ha det??

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...