Senden eines Aufgabenstatusberichts jeden Tag per Outlook VBA versenden.

Outlook VBA

Aufgabenelemente verfügen über eine Schaltfläche zum Senden einer Statusaktualisierung; klicken Sie auf diese Schaltfläche, um eine Nachricht mit den Details der Aufgabe zu erstellen.

Wenn Sie die Aktualisierung immer an dieselben E-Mail-Adressen senden müssen, können Sie ein Makro verwenden, um die Funktion Statusbericht aufzurufen und die Nachricht zu adressieren.

Aufgabenstatusbericht in Outlook

Um ein VBA-Skript zu erstellen, das einen Aufgabenstatusbericht in Outlook sendet, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie Outlook und drücken Sie Alt + F11, um den VBA-Editor zu öffnen.
  2. Klicken Sie im VBA-Editor auf “Einfügen” und wählen Sie “Modul”.
  3. Kopieren Sie den folgenden VBA-Code in das Modul:

Sub SendTaskStatusReport()

Dim objTask As Outlook.TaskItem
Dim objMail As Outlook.MailItem
Dim objSelection As Outlook.Selection
Dim strStatusReport As String
Dim strAdditionalLine As String

' Stellen Sie sicher, dass Sie eine Aufgabe ausgewählt haben
Set objSelection = Application.ActiveExplorer.Selection

If objSelection.Count = 1 And TypeOf objSelection.Item(1) Is TaskItem Then
Set objTask = objSelection.Item(1)

' Erstellen Sie den Statusbericht
strStatusReport = objTask.StatusUpdateRecipients

' Fügen Sie eine zusätzliche Zeile hinzu
strAdditionalLine = "Ihre zusätzliche Textzeile"

' Erstellen Sie eine neue E-Mail
Set objMail = Application.CreateItem(olMailItem)

With objMail
.Subject = "Aufgabenstatusbericht: " & objTask.Subject
.To = "email@domain.com" ' Ersetzen Sie dies durch die E-Mail-Adresse des Empfängers
.Body = strStatusReport & vbCrLf & strAdditionalLine
.Display ' Entfernen Sie diesen Kommentar, um die E-Mail automatisch zu senden: .Send
End With

Else
MsgBox "Bitte wählen Sie eine Aufgabe aus."
End If

End Sub

  1. Ändern Sie den Wert von .To auf die E-Mail-Adresse, an die der Statusbericht gesendet werden soll.
  2. Wenn Sie möchten, ändern Sie den Wert von strAdditionalLine auf den gewünschten zusätzlichen Text.
  3. Speichern Sie das Modul und schließen Sie den VBA-Editor.

Jetzt ist das Makro bereit, verwendet zu werden. Um das Makro auszuführen, wählen Sie zunächst eine Aufgabe aus und drücken Sie Alt + F8. Wählen Sie im Dialogfeld “Makro ausführen” das Makro “SendTaskStatusReport” aus und klicken Sie auf “Ausführen”.

Das Makro erstellt eine neue E-Mail mit dem Aufgabenstatusbericht und der zusätzlichen Textzeile. Wenn Sie möchten, dass die E-Mail automatisch gesendet wird, ohne sie anzuzeigen, entfernen Sie den Kommentar (') vor .Send im Code.

Mit offener oder ausgewählter Aufgabe arbeiten

Um das VBA-Skript so zu ändern, dass es mit der aktuell offenen oder ausgewählten Aufgabe arbeitet, können Sie den folgenden Code verwenden:

Sub SendTaskStatusReport()

Dim objTask As Outlook.TaskItem
Dim objMail As Outlook.MailItem
Dim objInspector As Outlook.Inspector
Dim strStatusReport As String
Dim strAdditionalLine As String

On Error Resume Next
Set objInspector = Application.ActiveInspector
Set objTask = objInspector.CurrentItem

If objTask Is Nothing Then
Set objTask = Application.ActiveExplorer.Selection.Item(1)
End If
On Error GoTo 0

If Not objTask Is Nothing And TypeOf objTask Is TaskItem Then

' Erstellen Sie den Statusbericht
strStatusReport = objTask.StatusUpdateRecipients

' Fügen Sie eine zusätzliche Zeile hinzu
strAdditionalLine = "Ihre zusätzliche Textzeile"

' Erstellen Sie eine neue E-Mail
Set objMail = Application.CreateItem(olMailItem)

With objMail
.Subject = "Aufgabenstatusbericht: " & objTask.Subject
.To = "email@domain.com" ' Ersetzen Sie dies durch die E-Mail-Adresse des Empfängers
.Body = strStatusReport & vbCrLf & strAdditionalLine
.Display ' Entfernen Sie diesen Kommentar, um die E-Mail automatisch zu senden: .Send
End With

Else
MsgBox "Bitte öffnen Sie oder wählen Sie eine Aufgabe aus."
End If

End Sub

Dieses Makro prüft zunächst, ob eine Aufgabe geöffnet ist. Wenn keine Aufgabe geöffnet ist, wird versucht, eine ausgewählte Aufgabe im Explorer zu verwenden. Wenn weder eine Aufgabe geöffnet noch eine Aufgabe ausgewählt ist, wird eine Fehlermeldung angezeigt.

Führen Sie die Schritte 1-6 aus dem vorherigen Antwortabschnitt aus, um dieses Skript in Outlook zu verwenden. Achten Sie darauf, dass entweder eine Aufgabe geöffnet oder eine Aufgabe ausgewählt ist, bevor Sie das Makro ausführen.

Erstellen Sie Ihren eigenen Statusbericht

Um Ihren eigenen Statusbericht für eine ausgewählte oder geöffnete Aufgabe zu erstellen, können Sie den folgenden VBA-Code verwenden:

Sub SendCustomTaskStatusReport()

Dim objTask As Outlook.TaskItem
Dim objMail As Outlook.MailItem
Dim objInspector As Outlook.Inspector
Dim strStatusReport As String
Dim strAdditionalLine As String

On Error Resume Next
Set objInspector = Application.ActiveInspector
Set objTask = objInspector.CurrentItem

If objTask Is Nothing Then
Set objTask = Application.ActiveExplorer.Selection.Item(1)
End If
On Error GoTo 0

If Not objTask Is Nothing And TypeOf objTask Is TaskItem Then

' Erstellen Sie den benutzerdefinierten Statusbericht
strStatusReport = "Aufgabe: " & objTask.Subject & vbCrLf & _
"Start: " & objTask.StartDate & vbCrLf & _
"Fällig: " & objTask.DueDate & vbCrLf & _
"Status: " & objTask.Status & vbCrLf & _
"Prozent abgeschlossen: " & objTask.PercentComplete & "%" & vbCrLf & _
"Notizen: " & objTask.Body

' Fügen Sie eine zusätzliche Zeile hinzu
strAdditionalLine = "Ihre zusätzliche Textzeile"

' Erstellen Sie eine neue E-Mail
Set objMail = Application.CreateItem(olMailItem)

With objMail
.Subject = "Benutzerdefinierter Aufgabenstatusbericht: " & objTask.Subject
.To = "email@domain.com" ' Ersetzen Sie dies durch die E-Mail-Adresse des Empfängers
.Body = strStatusReport & vbCrLf & vbCrLf & strAdditionalLine
.Display ' Entfernen Sie diesen Kommentar, um die E-Mail automatisch zu senden: .Send
End With

Else
MsgBox "Bitte öffnen Sie oder wählen Sie eine Aufgabe aus."
End If

End Sub

Dieser Code erstellt einen benutzerdefinierten Statusbericht, der die Aufgabe, das Startdatum, das Fälligkeitsdatum, den Status, den Prozentsatz der Fertigstellung und die Notizen zur Aufgabe enthält. Sie können den Code anpassen, um weitere Informationen hinzuzufügen oder vorhandene Informationen zu entfernen.

Führen Sie die Schritte 1-6 aus dem vorherigen Antwortabschnitt aus, um dieses Skript in Outlook zu verwenden. Achten Sie darauf, dass entweder eine Aufgabe geöffnet oder eine Aufgabe ausgewählt ist, bevor Sie das Makro ausführen.

-

Vorheriger Artikel Nächster Artikel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

CAPTCHA eingeben * Das Zeitlimit ist erschöpft. Bitte CAPTCHA neu laden.