Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
412to416
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
412to416
412to416
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Timer zum Makrostart?!

Timer zum Makrostart?!
13.04.2004 14:03:56
Andre
Hi, hat jemand ´ne Idee, wie ich alle halbe Stunde ein Makro laufen lassen kann?
Ok, ok, ich weiß mit der OnTime-Methode, aber bei dieser Methode läuft das Makro permanent ab und das erschwert verständlicherweise die Arbeit an dem Rechner etwas!
Es wäre fantastisch, wenn ich mein Makro lediglich alle halbe Stunde einmal starten lassen könnte, zwischendurch sollte dieses Makro aber nicht arbeiten.
Gruß Andre

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Timer zum Makrostart?!
13.04.2004 14:12:36
ChrisL
Hi Andre
OnTime oder mittels "Scheduled Tasks" in Windows. Eine andere Variante sehe ich nicht.
Gruss
Chris
Trotzdem Danke. o.T.
13.04.2004 14:40:07
Andre
AW: Timer zum Makrostart?!
13.04.2004 15:17:13
Kurt
Wenn du dich mich Api- Funktionen auskennst, kannst du eine Klasse
programmieren, die einen Timer laufen läßt ohne die normale Arbeit
in Excel zu behindern.
Kurt
AW: Timer zum Makrostart?!
14.04.2004 16:17:03
Andre
Hi Kurt,
danke für deinen Tip, aber die Sache soll lediglich nebenbei auf einem Server laufen und Emails sammeln und versenden, d.h. generell wird dort nicht viel gearbeitet, es laufen nur Programme und Dienste.
Ich habe herausgefunden, dass die Auslastung einer Schleife durch eine Unterbrechung mit "Application.wait" deutlich minimieren werden kann, d.H. ich kann trotz permanentem Schleifendurchlauf auf alle Bereiche zugreifen (zwar nicht auf die Excelinstanz in der momentan die Schleife läuft, aber das ist mittlerweile sekundär!)
Um diesen Thread zu verfollständigen: ich nutze jetzt folgende Schleife, die der Benutzer u.U. durch Betätigung eines Buttons auf einer Userform unterbrechen kann:

Sub Message_Director()
If Unterbrechung = "1" Then
Messager.fortsetzen.ForeColor = &HFF0000
Messager.unterbrechen.ForeColor = &H80000011
Messager.Caption = "Message-Director - offline"
Exit Sub
End If
Messager.Caption = "Message-Director - online"
Messager.fortsetzen.ForeColor = &H80000011
Messager.unterbrechen.ForeColor = &HFF0000
Set OutApp = CreateObject("Outlook.Application")
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(Trim(Messager.Verzeichnis.Caption))
Set fc = f.Files
For Each f1 In fc
Messager.Nachricht.Caption = "  " & f1.Name
Messager.Typ.Caption = "  " & f1.Type
Application.Wait (Now + TimeValue("0:00:01"))
If f1.Type = "Outlook-Element" Then
Set myitem = OutApp.CreateItemFromTemplate(f1)
myitem.Send
Kill (f1)
Else
unverarbeitet = unverarbeitet + 1
End If
Next
Messager.Nachricht.Caption = ""
Messager.Typ.Caption = ""
Messager.unverarbeiteteNach.Caption = unverarbeitet
Call Übersicht_Verzeichnis
Messager.Anzahl.Caption = [Counta(Messages!A2:A65536)]
If InstanceCheck("Outlook") <> True Then
Status = Shell("outlook.exe", vbMinimizedFocus)
End If
Application.Visible = True
ET = Now + TimeValue("00:00:10")
Application.OnTime ET, "Message_Director"
End Sub

Gruß Andre
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige