[VBA] jak vytvořit procedůru pro timer   otázka

VB6/VBA

dobrý den,

chci se zeptat do wordu vba jsi vytvořím nový timer

dim cas as new timer
cas.enable = true
cas.interval = 3000

jak ale nastavit co se má stát každých 3000 ms?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Timer ve VBA není třída ani typ, ale funkce, která vrací počet sekund uplynutých od půlnoci. Můžete tedy zachytit časový okamžik (třeba Start = Timer) a po přičtení intervalu kontrolovat v opakovacím cyklu, zda nastal potřebný okamžik, popř. použít rekurzi.

Kód, který uvádíte, je chybný - nepoužitelný.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pomocí funkce Timer přímo zde:

http://www.vbnet.cz/forum-tema--5321-tim...

Využití OnTime metody

nebo API SetTimer,KillTimer a TimerProc :

http://www.cpearson.com/excel/OnTime.asp...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Chcete-li vytvářet instance timeru pomocí New,tak

si budete muset vytvořit vlastní třídu s timerem.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

dim cas as new timer
cas.enable = true
cas.interval = 3000
AddHandler cas.Tik, AddressOf Procedura

Private Sub Procedura()
'Sem vlozit potrebny kod

end sub

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Oprava cas.Tik na cas.Tick

nahlásit spamnahlásit spam 0 odpovědětodpovědět

... a oprava cas.enable = True na cas.Enabled = True - ale ne pro VBA!

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

díky funguje

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback