Hallo,
für die Arbeit soll ich ein Script schreiben, welches die Termine aus mehreren Outlook Kalendern vergleicht. In einem Eingabefeld sollen die Mitarbeiterkürzel der zu vergleichenden Kalender so wie der zu prüfende Zeitraum angegeben werden. Was ich bisher rausgefunden habe ist, wie ich mittels einer for each Schleife die kompletten Termine für einen einzelnen Mitarbeiter durchlaufe. Hier mal mein Code:
Set OL = CreateObject(„Outlook.Application“)
Set olns = OL.GetNamespace(„MAPI“)
Set mitarbeiter = olns.CreateRecipient(„Seppel Huber“)
Set SharedFolder = olns.GetSharedDefaultFolder(mitarbeiter, 9)
Set oEintraege = SharedFolder.Items
For Each oAppt In oEintraege
wscript.echo „start:“ & oAppt.Start & " end:" & oAppt.End & "betreff: " & oAppt.Subject
Next
So ich es sehe, muss ich diese innere Schleife nun in eine äußere Schleife packen, welche den Vorgang für jeden Mitarbeiter durchführt. Aber, wie sage ich dem Script nun:
-
Welchen Mitarbeiter ich explizit meine? Unter Java kenne ich den String Tokenicer. Damit kann ich einen String in Teilsegmente zerlegen. Unter PHP ist das die Funktion Explode. Ich möchte also den im Textfeld eingegebenen string aus Mitarbeiterkürzeln und dem Zeitraum sinnvoll zerlegen. Also wenn ein Mitarbeiter Seppel Huber heißt, bekommt er das Kürzel sh. Ein anderer vielleicht August Gruber, der bekommt dann das Kürzel ag.
-
Wie übertrage ich das vom User eingegebene Datum in ein für Outlook verständliches Format? Also ein Suchstring für die Kollegen Huber und Gruber würde lauten:
ag sh 21.06.2016 08:00 16:30
Als Ausgabe wünsche ich mir dann in etwa:
Seppel Huber, 08:00 bis 09:00, Mails vom Vortag aufarbeiten
August Gruber, 08:00 bis 09:30, Besprechung Firmenjubiläum
Für Eure Hilfe bedanke ich mich schon mal im Voraus
Richard