Terve,
Exelillä tehdyssä ohjelmassani on "peukaloidenpyöritysrivi" eli rivi joka ei tee mitään muuta kuin odottaa tietyn ajan. Rivi on seuraavanlainen:
Application.Wait Now TimeValue("0:00:01")
Kyseinen rivi saa ohjelman odottamaan yhden sekunnin, mutta entäpä jos haluan ohjelman odottavan vaikkapa vain puoli sekuntia, onnistuuko se?
-Pasi-
Application.Wait Now
7
487
Vastaukset
- paavali50
Yritin sellaista että jakais sen sekunnin kahdella, mutta ei onnistu, tekee molemmat samaan aikaan.
Sub Makro1()
[A1] = 1
Application.Wait Now TimeValue("0:00:01") / 2
[A10] = 1
End Sub
Tämä kyllä onnistuu, tekee toisen viiden sekunnin kuluttua.
Sub Makro1()
[A1] = 1
Application.Wait Now TimeValue("0:00:10") / 2
[A10] = 1
End Sub
Ilmeisesti TimeValue ei ymmärrä sekuntia pienempää aikaa- Pasi
Kiitos kuitenkin yrityksestä!
- M.L.
Yksi ratkaisu ongelmaan olisi tehdä silmukka, joka ei tee mitään:
Alku = Timer
Do While Timer < Alku 0.5
Loop
Edellä oleva koodi suorittaa tyhjää silmukkaa puolen sekunnin ajan. Esimerkissä "Alku" on single-tyyppinen muuttuja.
Timer-funktio palauttaa keskiyöstä kuluneen ajan sekunnin sadasosan tarkkuudella. Siispä yllä oleva koodi ei toimi oikein, jos vuorokausi vaihtuu juuri silmukan suorituksen aikana.
- Mika- Pasi
Joo, tuota täytyykin kokeilla. Aika sattumaa olisi jos koodin suoritus sattuisi juuri puolen yön aikaan ja vieläpä sekunnin sadasosan tarkkuudella ja sitä paitsi ei ole niin älyttömän paha juttu vaikka tuollainen sattuma tulisikin.
Kiitos!
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
ja koodissa sitten käytät
sleep 500
1000 millisekuntia=1 s- Pasi
Juuri tuollaista koodia etsinkin, yksinkertaista ja "helppokäyttöistä". Harmi vain että Excel ilmoitti selkeästi:
"Käännösvirhe: Vakioita, kiinteämittaisia merkkijonoja, taulukoita ja Declare-lausekkeita ei voi käyttää objektimoduulien Public-jäseninä"
En vielä kokeillut toimiiko koodi jos se on jossakin modulissa, nyt yritin laittaa sitä UserFormin koodiin. Pärjään kyllä tuolla Loop-koodillakin.
Kiitos ja kumarrus!
-Pasi- Pasi kirjoitti:
Juuri tuollaista koodia etsinkin, yksinkertaista ja "helppokäyttöistä". Harmi vain että Excel ilmoitti selkeästi:
"Käännösvirhe: Vakioita, kiinteämittaisia merkkijonoja, taulukoita ja Declare-lausekkeita ei voi käyttää objektimoduulien Public-jäseninä"
En vielä kokeillut toimiiko koodi jos se on jossakin modulissa, nyt yritin laittaa sitä UserFormin koodiin. Pärjään kyllä tuolla Loop-koodillakin.
Kiitos ja kumarrus!
-Pasi-Joo ei toimi jos Public muuttuja lomakkeella, joten
moduuliin...
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
ja lomakkeella voit sitten käyttää esim.
sleep 500
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Anteeksi mies
En vaan osaa kohdata sinua ja olla normaali. En tiedä mikä vaivaa. Samaan aikaan tekee mieli tulla lähelle ja kuitenkin5911285Mietin aina vain
Minä niin haluaisin nähdä sinut. Ei tuo yhden ainoan kuvan katsominen paljon helpota... Miksi sinä et voisi olla se roh174791Hetken jo luulin, että en ikävöi sinua koko aikaa
Mutta nyt on sitten taas ihan hirveä ikävä jotenkin. Tiedätköhän sinä edes, kuinka peruuttamattomasti minä olen sinuun r334217Outoa että Trump ekana sanoutui irti ilmastosopimuksesta
kun Kaliforniaa riepottelee siitä johtuvat tuhoisat maastopalot. Hirmumyrskytkin ovat USA:ssa olleet tuhoisia.4502270Palstan henkisesti sairaat ja lihavat
Täällä on sairaita, työttömiä ihmisiä kirjoittelemassa joilla ei ole tarkoituksena kuin satuttaa ihmisiä. Jos eksyt pals1142200Saan kengurakkaan kotiin viikon päästä
Mitä tapahtui? Martina hehkutti tätä stoorissaan reilu viikko sitten, mutta eipä aussimiestä Suomessa näkynyt, vaan tapa2631678FinFamin ryhmät
Älkää hyvät ihmiset luottako tähän tahoon. Ryhmiä on, mutta eivät ne toimi. Ihmisiä savustetaan ulos, vaikka näissä piir01441Osmo Peltola voitti ansaitusti Kultaisen Venlan - Kirvoitti yleisöltä mahtavan reaktion!
JEE, onnea Osmo! Osmo Peltola voitti Vuoden esiintyjän Kultainen Venla -palkinnon. Isä-Peltsin ja Osmon luontoseikkailu831270Olen vähän
Hysteerinen se on totta. Etkai ymmärrä miten syvästi tunnen sinua kohtaan. Ja olet aina lähelläni. Olet osa jo jotain. I101175- 391166