Hei. Saako satunnailuku kaavaan sellaista komentoa, jossa painettaessa F9 nappia satunaisluku generaattori pyörisi vaikka 1min ja ilmoittaisi sen jälkeen luvun. Käytössä suomenkielinen excel
kaava =satunnaisluku()*1500
satunnaisluku
6
687
Vastaukset
- tarkkana
Tästä voisi kehittää ainakin VBA:lla helposti "miettivän" generaattorin.
Eli moduliin tämä:
'*******
Sub aja()
ThisWorkbook.Sheets(1).Calculate
' tee proseduuri "luku" annetun ajan jälkeen
milloin = Now TimeValue("00:00:10")
Application.OnTime milloin, "luku"
End Sub
Sub luku()
Range("A1").Value = Rnd(1) * 1500
End Sub
'*********
"aja" tuuppaa A1 soluun 10 sekunnin kuluttua satunnaisluvun - viilaillahan tuota voi- aika
Kokeilin ohjelmaa ja mulla se ei oikein pelittänyt. eli kun suoritin ajon, ohjelma ilmoitti että lukua ei löydy.Taas jos ajan luvun, niin luku tulee heti. En juurikaan ole käyttänyt VBE:tä joten tarvitsen hiukan apua. Miksi toi aika-arvo ei toteudu. Mulla on suomenkielinen excel.
- tarkkana
aika kirjoitti:
Kokeilin ohjelmaa ja mulla se ei oikein pelittänyt. eli kun suoritin ajon, ohjelma ilmoitti että lukua ei löydy.Taas jos ajan luvun, niin luku tulee heti. En juurikaan ole käyttänyt VBE:tä joten tarvitsen hiukan apua. Miksi toi aika-arvo ei toteudu. Mulla on suomenkielinen excel.
Koodi toimii sulla näköjään hyvin riville:
Application.OnTime milloin, "luku"
saakka mutta sitten se ei jostain kumman syystä löydä poseduuria nimeltä luku()
Itse tuosta viestistä vielä copy pastella heitin moduliin ja hyvin toimi. Ikävä kyllä en osaa enempää auttaa :( - tarkkana
aika kirjoitti:
Kokeilin ohjelmaa ja mulla se ei oikein pelittänyt. eli kun suoritin ajon, ohjelma ilmoitti että lukua ei löydy.Taas jos ajan luvun, niin luku tulee heti. En juurikaan ole käyttänyt VBE:tä joten tarvitsen hiukan apua. Miksi toi aika-arvo ei toteudu. Mulla on suomenkielinen excel.
Entäs, jos virität koodin sekaan vain tämän rivin (enen satunnaisluvun arpomista):
Application.Wait Now() TimeValue("00:00:05") kun ei ole milloin muuttujaa määritelty oikein- eli toimii vain kerran
tossa minuutin ajolle makro
Public milloin As Double
Public Loppu As Double
Sub aja()
Loppu = Now TimeSerial(0, 1, 0)
Luku
End Sub
Sub Luku()
Range("A1").Value = Rnd(1) * 1500
milloin = Now TimeValue("00:00:01")
Application.OnTime milloin, "luku", Loppu
End Sub- tarkkana
kunde kirjoitti:
kun ei ole milloin muuttujaa määritelty oikein- eli toimii vain kerran
tossa minuutin ajolle makro
Public milloin As Double
Public Loppu As Double
Sub aja()
Loppu = Now TimeSerial(0, 1, 0)
Luku
End Sub
Sub Luku()
Range("A1").Value = Rnd(1) * 1500
milloin = Now TimeValue("00:00:01")
Application.OnTime milloin, "luku", Loppu
End SubMystistä - itse olent tuota kokeillut useammallakin ohjelmaversiolla eikä mitään ongelmaa.
Jos käsitin oikein, generaattorin piti miettiä annettu aika ja antaa sitten luku.
Tälläkin voisi ongelman ratkaista - eli nyt tuo luvun arpova osuus miettiin viisi sekuntia ja sitten antaa luvun
Sub luku()
Application.Wait Now() TimeValue("00:00:05")
Range("A1").Value = Rnd(1) * 1500
End Sub
Paha kyllä tässä joutuu katselemaan tiimalasia.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Sannan kirja USA:n bestseller!
"Congratulations to Sanna Marin's HOPE IN ACTION, officially a USA TODAY bestseller!" Kertoo Scribner. Mitäs persut tä14711322- 278063
Metsäalan rikolliset
Jokohan alkaa vähitellen kaatua kulissit näillä ihmiskauppaa harjoittavilla firmoilla.565840Ruotsalaistoimittaja: "Sanna Marinin saunominen saa minut häpeämään"
Sanna Marinin kirja saa täyslaidallisen ruotsalaislehti Expressenissä perjantaina julkaistussa kolumnissa.....voi itku..1594522Suomen kaksikielisyys - täyttä huuhaata
Eivätkö muuten yksilöt pysty arvioimaan mitä kieliä he tarvitsevat? Ulkomaalaiselle osaajalle riittää Suomessa kielitai314306Työeläkeloisinta 27,5 mrd. per vuosi
Tuo kaikki on pois palkansaajien ostovoimasta. Ja sitten puupäät ihmettelee miksei Suomen talous kasva. No eihän se kas824160- 843448
- 803206
- 471689
- 391602