Avatar billede mostcrazy Nybegynder
19. november 2007 - 09:31 Der er 12 kommentarer og
1 løsning

Timer i VBA

Hejsa,

Findes der en form for timer i Excel således at man kan få eksekveret noget VBA kode med nogle faste intervaller på under 1 sekund?
Avatar billede jkrons Professor
19. november 2007 - 10:41 #1
Det kan du godt. Lav den VBA kode, du vil have eksekveret i en SUB.

Opret dernæst denen timer:

Sub Timer()
  Application.OnTime Now + TimeSerial(0, 0, 0.5), "navn på din sub"
End Sub

Start funktionen ved at afspille Timer. Du kan også lade Worksheet_Open hændelsen starte timeren, hvis det skal ske automatisk. Den ovenstående afspilles hvert halve sekund. Først tal i parentesen er timer, andet minutter og trejde sekunder.
Avatar billede mostcrazy Nybegynder
19. november 2007 - 11:19 #2
Oki, hvad så hvis den skal gentage sig selv hele tiden, således at den gør f.eks. hver halve sekund hele tiden indtil en hændelse optræder?
Avatar billede jkrons Professor
19. november 2007 - 11:40 #3
Hvilken hændelse?
Avatar billede mostcrazy Nybegynder
19. november 2007 - 11:46 #4
Jeg skal have den til at farve nogle felter
Avatar billede jkrons Professor
19. november 2007 - 12:42 #5
Den er jeg med på, men kan du ikke beskrive præcis hvad du ønsker at opnå med timeren? Hvoad skal udløse den, og skal den gentage sig selv "til dommedag" eller skal den stoppe på et tidspunkt? Og i givet fald, hvad bestemmer, når den er færdig.
Avatar billede mostcrazy Nybegynder
19. november 2007 - 23:47 #6
Jeg ønsker at opnå at brugeren klikker på en knap i excel arket, hvorefter koden startes. Koden skal løbe indtil at et felt i arket får værdien 0, og der bliver i feltet talt ned fra 3 under nogle bestemte forudsætninger.
Timer'en skal med nogle små tidsintervaller farve forskellige felter i arket som er defineret indenfor et dynamisk range.
Avatar billede jkrons Professor
20. november 2007 - 19:09 #7
Prøv med noget i denne stil:

Sub Timer()
Din kode, der farver her...'
If Range("A1").Value <> 0 Then
  Application.OnTime Now + TimeSerial(0, 0, 0.5), "Timer"
End If
End Sub

Nu er det timeren, du skal starte ved at klikke på knappen. Den indeholder koden, der farver, og hvert halvde sekund genstartes den, med mindre A1 = 0. Ret selv A1 til den celle, hvor værdien tækkes ned.
Avatar billede jkrons Professor
20. november 2007 - 19:09 #8
tækkes=tælles.
Avatar billede mostcrazy Nybegynder
29. september 2008 - 07:40 #9
jkrons vil du smide et svar
Avatar billede jkrons Professor
29. september 2008 - 16:21 #10
Et svar...
Avatar billede mostcrazy Nybegynder
07. december 2008 - 13:54 #11
jkrons det var ikke et svar :)
Avatar billede mostcrazy Nybegynder
20. januar 2009 - 12:35 #12
Så er det nu eller aldrig :-)
Avatar billede jkrons Professor
20. januar 2009 - 18:05 #13
Et svar
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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