English
|
Reporter |
| Mit dem Reporter erstellen Sie Berichte für Ihre Outlook Daten. Mit wenigen Klicks werden Werte aus Aufgaben, Terminen und dem Journal summiert. |
Wenn Sie eine Funktion in regelmäÃigen Intervallen immer wieder starten müssen, dann bietet sich ein Timer an, der in festgelegten Intervallen ausgelöst wird. Eine weitere Anwendungsmöglichkeit ist es, Prozesse zu entkoppeln. Ein typisches Szenario ist, dass Sie beim Start Outlooks einen Ordner per VBA aufräumen müssen. Das Application_Startup-Ereignis liefert das Startsignal, aber solange dann Ihr Makro für die Ausführung benötigt, wird Outlook am weiteren Start gehindert, was zu Problemen führen kann. Wenn Sie stattdessen in dem Ereignis nur den Timer starten, dann kann Outlook mit seinen eigenen Aufgaben sofort fortfahren und Ihr Makro wird erst später aufgerufen.
Klicken Sie auf Einfügen/Modul und fügen Sie diesen ersten Teil des Codes in das neue Modul ein.
Private Declare Function SetTimer Lib "user32.dll" (ByVal hwnd As Long, _
ByVal nIDEvent As Long, ByVal uElapse As Long, _
ByVal lpTimerFunc As Long) As Long
Private Declare Function KillTimer Lib "user32.dll" (ByVal hwnd As Long, _
ByVal nIDEvent As Long) As Long
Const WM_TIMER = &H113
Private hEvent As Long
Private m_Callback As ThisOutlookSession
Public Sub TimerProc(ByVal hwnd As Long, ByVal uMsg As Long, _
ByVal wParam As Long, ByVal lParam As Long _
)
If uMsg = WM_TIMER Then
m_Callback.TimerEvent
End If
End Sub
Public Function EnableTimer(ByVal Interval As Long, Callback As ThisOutlookSession) As Boolean
If hEvent <> 0 Then
Exit Function
End If
hEvent = SetTimer(0&, 0&, Interval, AddressOf TimerProc)
Set m_Callback = Callback
EnableTimer = CBool(hEvent)
End Function
Public Function DisableTimer()
If hEvent = 0 Then
Exit Function
End If
KillTimer 0&, hEvent
hEvent = 0
End Function
|
ReplyAll |
| Mit diesem Addin für Outlook erhalten Sie in verschiedenen Situationen eine Warnung, bevor Sie auf eine Email versehentlich allen anderen Empfängern antworten. |
Die folgenden drei Funktionen sind ein Beispiel, wie der Timer gleich nach dem Start Outlooks gestartet werden kann. Das Intervall ist auf 60.000 ms festgelegt, d.h. die Funktion TimerEvent wird nach 60 Sekunden aufgerufen. In der TimerEvent-Funktion können Sie den Timer sofort wieder abschalten, wenn Sie nur das eine Signal brauchen. Oder Sie lassen den Timer weiterlaufen, wenn Sie regelmäÃig alle 60 Sekunden eine Funktion ausführen wollen.
In jedem Fall müssen Sie den Timer spätestens vor Beenden Outlooks abschalten, sonst führt das zu einem Absturz. Es reicht, DisableTimer, wie gezeigt, aus Application_Quit heraus aufzurufen.
Private Sub Application_Startup() EnableTimer 60000, Me End Sub Public Sub TimerEvent() 'Abschalten, wenn keine weiteren Signale gebraucht werden DisableTimer End Sub Private Sub Application_Quit() DisableTimer End Sub
|
SAM |
| Legen Sie fest, mit welcher "Identität" Ihre Emails beim Empfänger erscheinen sollen. Mit SAM bestimmen Sie den Absender und Speicherort für Emails anhand von Regeln. |