Avatar billede teknikeren Nybegynder
27. december 2002 - 13:39 Der er 21 kommentarer og
2 løsninger

Tilfældigt tal

Hej.
Hvordan gør jeg sådan at jeg får en variabel  den vælger et tilfældigt tal mellem 1000 og 100.000, og derefter skriver det i en msgbox? Jeg har kunnet det før men hukommelsen svigter ;)
Avatar billede tubber Juniormester
27. december 2002 - 13:43 #1
Dim randTal as Integer

randTal = rnd(2*6) + 1 'Giver 2 random tal mellem 1 og 6
Avatar billede tubber Juniormester
27. december 2002 - 13:43 #2
hov skulle være et svar :O)
Avatar billede teknikeren Nybegynder
27. december 2002 - 13:45 #3
Jamen det skulle være mellem 1000 og 100.000
Avatar billede tubber Juniormester
27. december 2002 - 13:53 #4
randTal = rnd(1*99.000) + 1001 'Giver 1 random tal mellem 1000 og 100.000
Avatar billede teknikeren Nybegynder
27. december 2002 - 14:46 #5
tubber << Den tager ikkt et tilfældigt... Den forhøjer bare med en...!
Avatar billede tubber Juniormester
27. december 2002 - 15:03 #6
øhm hvad mener du ? forhøjer med en ?

det er ikke sikkert du skal have . i dit tal.... 99000 istedet for 99.000
Avatar billede teknikeren Nybegynder
27. december 2002 - 15:45 #7
Det virker heller ikke... Det eneste tal den skriver er 1002
Avatar billede miknil Nybegynder
27. december 2002 - 16:59 #8
Du får det samme svar her:

lav = 1000 '
hoj=  100000 '
num = Int(Rnd * (hoj - lav + 1)) + lav

Michael
Avatar billede tubber Juniormester
27. december 2002 - 18:59 #9
hov det er sådan her :O)

randTal = (rnd*99.000) + 1001 'Giver 1 random tal mellem 1000 og 100.000
Avatar billede tubber Juniormester
27. december 2002 - 19:01 #10
Int(rnd*99.000) + 1001 'Giver 1 random tal mellem 1000 og 100.000
Avatar billede tubber Juniormester
27. december 2002 - 19:02 #11
For i = 1 To 10000
randTal = Int(Rnd * 99000) + 1001
List1.AddItem randTal
Next i

Den laver 10000 tal der er random mellem 1000 og 100.000
Avatar billede teknikeren Nybegynder
27. december 2002 - 19:37 #12
Hmm... Nu ved jeg godt at jeg går over i noget andet men... Hvordan gør jeg sådan, at når man trykker på en knap, er der en progressbar der begynder at tælle og efter eks. 15 sek. er den helt oppe?
Avatar billede tubber Juniormester
27. december 2002 - 19:51 #13
med en timer der kører hvor du tager og siger at 100% = 100 og så siger du 15 sekunder = 100%

Så får du et regnestykker der siger 15/100 = 0,15 sekuner * 1000 da timeren er i millisekunder......

altså dit timer interval er : 150

Så må det være noget der ligner lidt :

Private Sub Timer1_Timer()
Progressbar1.Value = Progressbar1.Value + 1
End Sub

Private Sub Form_Load()
Progressbar1.Min = 0
Progressbar1.Max = 100
Progressbar1.Value = 0
End Sub
Avatar billede tubber Juniormester
27. december 2002 - 19:52 #14
Jeg ved dog ikke om den For Next løkke venter med at kører vidre til timeren er sluttet....
Avatar billede teknikeren Nybegynder
27. december 2002 - 19:55 #15
tubber << Der er ikke en property der hedder 'value' på en progressbar...
Avatar billede teknikeren Nybegynder
27. december 2002 - 19:56 #16
Men det virker alligevel
Avatar billede teknikeren Nybegynder
27. december 2002 - 19:57 #17
Men når den er færdig skriver den "Invalid property value"... why
Avatar billede teknikeren Nybegynder
27. december 2002 - 19:59 #18
Fejlen er i denne linie:
ProgressBar1.Value = ProgressBar1.Value + 1
Avatar billede teknikeren Nybegynder
27. december 2002 - 20:03 #19
Og så når den er helt oppe, skal den udføre et stykke kode.
Avatar billede tubber Juniormester
27. december 2002 - 20:03 #20
Det er fordi din value løber over max value hvis din
Progressbar1.Max = 100
og din Progressbar1.Value = 101 så kommer den der fejl....
Avatar billede teknikeren Nybegynder
27. december 2002 - 20:06 #21
hmm... hvodan kan man rette det?
Avatar billede brobaek Nybegynder
30. december 2002 - 14:05 #22
Btw - når du bruger rnd så husk lige at brug randomize inden...
Avatar billede teknikeren Nybegynder
30. december 2002 - 17:47 #23
Har fundet ud af det:

Private Sub Form_Load()
ProgressBar1.Min = 0
ProgressBar1.Max = 100
ProgressBar1.Value = 0
End Sub

Private Sub Timer1_Timer()
ProgressBar1.Value = ProgressBar1.Value + 1
If ProgressBar1.Value = 100 Then
Timer1.Enabled = False
End If
End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester