In diesem Artikel erfahren Sie, wie Sie auf einfache Weise die Liste aller Termine ausdrucken können, die als "Besetzt" angezeigt und in einem bestimmten Zeitraum geplant sind.
Es ist recht einfach, alle Kalender zu durchlaufen, um alle belegten Termine in einem bestimmten Zeitraum zu finden. Stellen Sie dazu einfach den Suchbereich auf „Alle Kalendereinträge“ ein. Suchen Sie anschließend nach Terminen, bei denen „Zeit anzeigen als“ auf „Belegt“ eingestellt ist und die innerhalb des angegebenen Start- und Enddatums liegen. Wenn Sie die gefundenen Termine jedoch ausdrucken möchten und auf „Datei“ > „Drucken“ klicken, sehen Sie, dass nur der Stil „Memo“ verfügbar ist. Das bedeutet, dass Sie die gefundenen Termine nicht als Liste drucken können. Um die Liste dieser Termine auszudrucken, gehen Sie wie folgt vor.

Drucken Sie die Liste aller besetzten Termine in einem bestimmten Zeitraum
- Starten Sie den Outlook VBA-Editor gleich zu Beginn über „Alt + F11“.
- Fügen Sie anschließend im Popup-Fenster „Microsoft Visual Basic for Applications“ den Verweis auf die „MS Excel Object Library“ gemäß „Wie man in VBA einen Objektbibliotheksverweis hinzufügt".
- Fügen Sie danach den folgenden VBA-Code in ein Modul ein.
Dim dStart, dEnd As Date
Dim objExcelApp As Excel.Application
Dim objExcelWorkbook As Excel.Workbook
Dim objExcelWorksheet As Excel.Worksheet
Sub PrintListOfAllBusyAppointments()
Dim objStore As Store
Dim objFolder As Folder
dStart = InputBox("Enter the start date:", , Date)
dEnd = InputBox("Enter the end date:", , Date + 30)
Set objExcelApp = CreateObject("Excel.Application")
Set objExcelWorkbook = objExcelApp.Workbooks.Add
Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
objExcelApp.Visible = True
With objExcelWorksheet
.Cells(1, 1) = "Subject"
.Cells(1, 1).Font.Bold = True
.Cells(1, 2) = "Location"
.Cells(1, 2).Font.Bold = True
.Cells(1, 3) = "Start"
.Cells(1, 3).Font.Bold = True
.Cells(1, 4) = "End"
.Cells(1, 4).Font.Bold = True
.Cells(1, 5) = "In Folder"
.Cells(1, 5).Font.Bold = True
End With
For Each objStore In Application.Session.Stores
For Each objFolder In objStore.GetRootFolder.Folders
If objFolder.DefaultItemType = olAppointmentItem Then
Call ProcessFolders(objFolder)
End If
Next
Next
objExcelWorksheet.Columns("A:E").AutoFit
objExcelWorksheet.PrintOut
objExcelWorkbook.Close False
objExcelApp.Quit
End Sub
Sub ProcessFolders(ByVal objCurFolder As Folder)
Dim strFilter As String
Dim objItems As Outlook.Items
Dim objRestrictedItems As Outlook.Items
Dim objAppointment As AppointmentItem
Dim nLastRow As Integer
Dim objSubFolder As Folder
Set objItems = objCurFolder.Items
objItems.IncludeRecurrences = True
objItems.Sort "[Start]"
'Get the appointments in the specific date range
strFilter = "[Start] >= " & Chr(34) & dStart & " 00:00 AM" & Chr(34) & " AND [End] <= " & Chr(34) & dEnd & " 11:59 PM" & Chr(34)
Set objRestrictedItems = objItems.Restrict(strFilter)
For Each objAppointment In objRestrictedItems
If objAppointment.BusyStatus = olBusy Then
nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
With objExcelWorksheet
.Range("A" & nLastRow) = objAppointment.Subject
.Range("B" & nLastRow) = objAppointment.Location
.Range("C" & nLastRow) = objAppointment.Start
.Range("D" & nLastRow) = objAppointment.End
.Range("E" & nLastRow) = objCurFolder.FolderPath
End With
End If
Next
'Process all subfolders recursively
If objCurFolder.Folders.Count > 0 Then
For Each objSubFolder In objCurFolder.Folders
Call ProcessFolders(objSubFolder)
Next
End If
End Sub
- Klicken Sie später in die erste Unterroutine und drücken Sie die Taste „F5“.
- Als Nächstes müssen Sie den Datumsbereich für die Suche nach Terminen angeben.
- Klicken Sie anschließend auf "OK", um das Makro fortzusetzen.
- Wenn das Makro beendet ist, wird die Liste der ausgelasteten Termine im vordefinierten Datumsbereich in allen Kalenderordnern gedruckt, wie im folgenden Screenshot gezeigt.
Bekämpfung der störenden Outlook-Korruption
Wenn Ihr Outlook immer nicht ordnungsgemäß geschlossen wird, können später viele Probleme auftreten. Unter diesen ist die beschädigte Outlook-Datei die schlimmste. Wenn Sie Ihre Daten nicht verlieren möchten, müssen Sie ein PST-Fix-Tool wie z DataNumen Outlook Repair. Es ist in der Lage, maximale Daten von zurückzugewinnen Outlook beschädigt Datei.
Einführung des Autors:
Shirley Zhang ist eine Datenrettungsexpertin in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich SQL Fix und Outlook-Reparatursoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX


