Hallo,
ich hoffe, ihr könnt mir weiter helfen. Leider weiß ich nicht mehr weiter.
Ich habe folgendes Problem.
Ich habe ein Makro erstellt, das Telegramme auf meinem IP-Netzwerk sequentiell sendet. Dabei werden die Telegramm-Inhalte aus einer Exel Tabelle entnommen (pro Zeile ein Telegramm). Beim Erreichen des Tabellenendes wird wieder vom Anfang der Tabelle gesendet. Wenn die Tabelle einmal durchlaufen wurde, entspricht das einem Sendezyklus. Das Makro ist so geschrieben, dass z.B. 1000 Zyklen durchlaufen werden.
Das Makro funktioniert eigentlich sehr zuverlässig. Jedoch habe ich festgestellt, dass das Makro nach jedem Zyklus langsamer wird.
Hier ein Beispiel: Der erster Zyklus ist nach 20 Sekunden beendet. Der zehnte erst nach 40 Sekunden.
Zwischen den sequenziell abzuarbeitenden Zeilen habe ich eine Wartezeit von 100ms eingebaut.
Folgende Anweisung habe ich dafür verwendet:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Test()
‘Meine Funktionalität
DoEvents
Sleep 100
‘Meine Funktionalität
Exit Sub
Bei Folgendem Befehl bleiben die Zeiten identisch (leider brauche ich aber eine Wartezeit von < 1 Sekunde).
Application.Wait Now + TimeSerial(0, 0, 1)
Hat einer eine Idee, was das sein kann?
|