Der Befehl heißt natürlich DoEvents.
Sorry, Holger
Holger schrieb am 19.11.2007 13:35:34:
Hallo inchki,
um die Schleife nicht zu verlassen, aber andere Ereignisse dennoch zu prüfen können, gibt es den DoEvent-Befehl.
Willst du keine Schleife, sondern nur periodisch prüfen, ob eine Bedingung erfüllt ist, kannst du die OnTime-Funktion nutzen. Ein sicherlich verbesserungsfähiges Beispiel findest du hier im Forum unter
Begrenzung der CPU-Last während Programmausführung vom 31.10.2007.
Viel Erfolg
Holger
inchki schrieb am 19.11.2007 03:59:16:
hi,
mmmh, war wirklich nicht gut geschildert... ich brauche einen timer der den stop-befehl ersetzt, da das programm automatisch laufen soll. loesche ich den stop-befehl raus geht der computer die schleife endlos lang durch. d.h. der timer muesste vielleicht irgendwie nebenbei noch aktionen zulassen. ich habs schon mit der wait-methode versucht, aber da passiert nichts. in vb6 gibt es glaube ich nen entsprechenden timer, aber mein problem ist, dass wenn ich in vb6 die Hilfe aufrufen moechte, das programm sagt: ich soll MSDN nochmal installieren...aber das hilft irgendwie nicht.
Private Sub MSComm3_OnComm()
Do
Stop
Select Case MSComm3.CommEvent
Case comEvReceive
Hprt3 = MSComm3.Input
Cells(12 * Counter2 + 4, Counter1 + 3).Select
ActiveCell.FormulaR1C1 = Val(Hprt3)
End Select
Loop Until Hprt3 <> 0
MSComm3.PortOpen = False
CommandButton2_Click
End Sub
danke schonmal fuer die hilfe...
gruss
inchki
Holger schrieb am 16.11.2007 13:20:33:
Hallo inchki,
ich weiß zwar nicht genau, was du mit dem Timer anfangen willst, so dass ich keine konkrete Empfehlung geben kann, aber VBA hat eine Timer-Funktion, die die Zeit ab Mitternacht in einer ca. 16 msec-Auflösung zurückgibt, und eine OnTime-Methode, mit der man die Ausführung von Programmen zeitabhängig erreichen kann. Achtung! Die Syntax unterscheidet sich teilweise für Word oder Excel.
Dein Problem mit VB6 habe ich gar nicht verstanden.
Viel Erfolg
Holger
inchki schrieb am 16.11.2007 08:45:42:
Hallo,
ich arbeite mit VBA (auch noch nicht sehr lange) und habe jetzt erst vor kurzem vb6 bekommen. ich braeuchte nen timer in meinem programm (in vba), hab da aber bis jetzt noch keinen gefunden. gibt es sowas in vba ueberhaupt?
ich wuerde ja alles nach vb6 uebertragen aber leider fehlt mir da die hilfe (es soll msdn neu installiert werden, hab ich gemacht, funktioniert aber trotzdem nicht) und ich weiss nicht wie ich dann alles in ein Excel-sheet uebertragen soll...
vielleicht kann mir ja jemand bei einer der beiden sachen behilflich sein. danke schonmal.
gruesse |