Na dann probier ich doch mal:
25.06.2002 23:28:11
Ramses
Hallo Hermann,der Code ist ungetestet weil ich nicht weiss was dein Makro beim einlesen macht.
Zum testen würde ich die Waittime vielleicht auf "00:00:10" = 10 Sekunden einstellen.
Beim abbrechen muss die ESC-Taste schon ein bischen länger gedrückt werden :-)
Es wird davon ausgegangen, dass die Daten in das aktive Blatt eingelesen werden und die Daten in Zeilen ab Spalte A eingetragen werden.
Der Druckauftrag wird ausgegeben wenn jeweils eine Seite voll ist, d.h. ich habe jetzt mal 75 Zeilen angenommen ( If Cr Mod 75 ).
Es wird immer nur die neue Seite gedruckt.
Sub DemoTimer()
Dim Waittime As String, WaitValue As Integer
Dim myPage As Integer
Dim Cr As Long
On Error GoTo DemoTimerError
'1. Druckseite definieren
myPage = 1
'ESC als Abbruchtaste erlauben
Application.EnableCancelKey = xlErrorHandler
'Wartezeit
WaitValue = 10
'Zeit erstellen
Waittime = "00:10:00"
'Erste leere Zelle in Spalte A ( = 1) finden
Cr = 65536
If Cells(Cr, 1) = "" Then
Cr = Cells(Cr, 1).End(xlUp).Row
End If
'144 = 24 Stunden * 10 Minuten
For i = 1 To 144
'Warte Zielzeit berechnen
Waittime = Now() + TimeValue(Waittime)
Do Until Now() = Waittime
'Eingaben während des Makrolaufes erlauben
DoEvents
Loop
Cr = Cr + 1
'Hier kommt der Befehl deine Datei einzulesen
'Cells(cr,xxxxxx
'Wenn der Teiler 0 ist, wird ein Druckauftrag gelöst
If Cr Mod 75 = 0 Then
'Druckauftrag beginnen
ActiveSheet.PrintOut from:=myPage, To:=myPage
myPage = myPage + 1
End If
Next i
DemoTimerExit:
Exit Sub
DemoTimerError:
MsgBox "Makro abgebrochen"
Resume DemoTimerExit
End Sub
Code eingefügt mit Syntaxhighlighter 1.12
Gruss Rainer