Excel VBA, Timer in eigenen Thread

OP #1529495
Lesenswert?

Hallo,

ich habe eine Excelanwendung, in der ich zyklisch eine Messkarte 
auslesen und in ein Excelfeld schreiben möchte. Nun soll dies jede 
Sekunde passieren. Dazu habe ich mir unter Verwendung der user32.dll 
einen Timer programmiert, der auch schon prima läuft. Nun dachte ich, 
ich mache einfach wie beim uC: Timer an und dann

While(Wartezeit < TimerZeit) 'warte einfach

Dummerweise muss dazu der Timer in einem eigenen Thread laufen, weil, 
wie ich festgestellt habe, in der While-schleife auch der Timer 
stehenbleibt.
Wie kann ich in Excel VBA für den Timer einen eigenen Tread anlegen?

Gruß, Alex
OP #1529555
Lesenswert?

Hallo Klaus,

danke für die schnelle Antwort. Genau den Timer aus dem ersten Link 
verwende ich und er läuft auch. Allerdings muss ich ihn in einen eigenen 
Thread packen, damit er unabhängig ist vom Rest des Programms. Habe es 
jetzt aber anders gelöst, indem ich den relevanten Code in der Sub 
TimerProc ausführe und keine Warteschleife verwende. Aber prinzipiell 
würde ich gern wissen, ob das in VBA geht, einen Extrathread für den 
Timer zu starten.

Gruß, Alex
Gast #1529847
Lesenswert?

Hallo Alexander,

kennst du irgendeine verlässliche Aussage über die Threadsicherheit von 
Excel-VBA? Vom Hörensagen würde ich tippen, es ist nicht Threadsicher.

Lass mich gerne aufklären, wenn ich unrecht hab.

Grüße
Gast #1541747
Lesenswert?

Hallo Alexander,

entschuldige bitte dass ich falsche Hoffnungen gemacht habe, aber meine 
Anwendung (für die ich über Threading nachgedacht habe) implementiert 
gar keinen Timer. Meine Gedanken gingen in eine ganz andere Richtung, 
ich habe hier nur meine Frage in den Raum geworfen - ich wollte nicht 
den Thread kapern, sorry nochmals.

Grüße

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren