Clever-Excel-Forum

Normale Version: Termine von Excel in Outlook importieren (Makro)
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Moin zusammen,

ich habe gerade eine Tabelle erstellt, von der aus ich regelmäßig Termine in bestimmte Outlook Kalender übertragen möchte. Ich habe also eine Kalender mit den Namen "Projekt A" in Outlook angelegt und möchte nun die Termine aus der Tabelle "Projekt A" übertragen. Über die Importfunktion in Outlook klappt das auch ohne Probleme, allerdings ändern sich einige Deadlines oder Termine regelmäßig, weshalb ich den Import hin und wieder wiederholen muss. Das Problem ist nun, dass alte Einträge in Outlook beim Import erhalten bleiben (auch wenn ich auswähle, dass Duplikate entfernt werden sollen). Nun habe ich schon jede Menge gegoogelt und es sieht wohl so aus, dass man das Ganze über ein Makro in Excel lösen kann. Leider verstehe ich davon so gut wie gar nichts und deshalb wende ich mich an euch. 

Folgende Fragen stellen sich mir, bevor ich zu sehr ins Detail gehe:

- geht das überhaupt?
- würde es funktionieren, dass dieses Makro einfach immer ausgeführt wird, wenn sich in dem Terminplan in Excel etwas ändert? So wäre Outlook automatisch immer auf dem aktuellsten Stand.

Nun wäre es so, dass ich diese Excel-Datei für verschiedene Projekte verwenden würde. Ich hätte also quasi eine Datei dieser Art für "Projekt A" und noch eine für "Projekt B" und dementsprechend einen Kalender in Outlook für "Projekt A" und einen für "Projekt B". 

- Ließen sich sogar diese Kalender automatisch durch das Makro erstellen? Also dass quasi eine Überprüfung stattfindet: "Gibt es den Kalender Projekt A schon? Wenn ja, dann werden die Termine übertragen, wenn nein, dann wird dieser erstellt, um dann die Termine eintragen zu können".


Ich weiß, dass das ziemlich spezifische Anforderungen sind und tatsächlich kann ich mir mit meinen momentanen Tabellen schon helfen. Jetzt will ich aber ehrlich gesagt auch wissen, ob man das Ganze richtig gut lösen kann, sodass ich die maximale Arbeitserleichterung habe ;)
Hallöchen,

hier mal ein Ansatz, wie Du unterschiedliche Kalender ansprechen kannst.

Code:
Sub OutlookKalender()
'Variablenddeklarationen
'Objekte
Dim olApp As Object, olMAPI As Object, olCurFol As Object, olCalFol As Object
Dim olItems As Object

  'Outlook verbinden
  Set olApp = CreateObject("Outlook.Application")
  Set olMAPI = olApp.GetNamespace("MAPI")
  Set olCurFol = olMAPI.GetDefaultFolder(olFolderCalendar)
  'Standardkalender
  Set olItems = olMAPI.GetDefaultFolder(olFolderCalendar).Items
  'Kalender in gleicher Ebene wie andere Ordner
  Set olItems = olCurFol.Parent.Folders("Kalender").Items
  'Kalender als Unterordner eines Kalenders
  Set olItems = olCurFol.Folders("Kuhlander").Items
End Sub