{"id":55000500,"date":"2007-10-01T00:00:00","date_gmt":"2021-02-11T21:18:14","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=500"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"OutlookObjekte_in_Access_speichern","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/","title":{"rendered":"Outlook-Objekte in Access speichern"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>Bereits einige Beitr&auml;ge in Access im Unternehmen besch&auml;ftigt sich mit dem Im- und Export von Outlook-Objekten zwischen Access und Outlook. Dabei erfolgt das Synchronisieren immer zu einem vom Benutzer festgelegten Zeitpunkt. Was aber, wenn man in Access immer auf die aktuell in Outlook gespeicherten Daten zugreifen m&ouml;chte, ohne die Daten manuell abzugleichen Ein Blick hinter die Kulissen des Outlook-Objektmodells bringt Lichts ins Dunkel.<\/b><\/p>\n<\/div>\n<div class=\"story\">\n<p>Kontakte, E-Mails, Termine und Aufgaben &#8211; den Abgleich all dieser Objekte zwischen Access und Outlook haben Sie als flei&szlig;iger Leser bereits kennen gelernt. Falls nicht, empfiehlt sich ein Blick auf die im Onlinearchiv gespeicherten Beitr&auml;ge mit den Shortlinks 290 (E-Mails), 439 (Termine), 113 und 129 (Kontakte) sowie 498 (Aufgaben).<\/p>\n<p>Diese Artikel beschreiben in der Regel, wie Sie die jeweiligen Objekte von Access nach Outlook und zur&uuml;ck bekommen &#8211; allerdings immer von Access aus gesteuert. Dementsprechend sollte es auch kein Problem sein, in Access eine Funktion zu implementieren, die neu angelegte oder ge&auml;nderte Elemente direkt nach dem Anlegen oder &auml;ndern mit Outlook synchronisiert.<\/p>\n<p>Dies funktioniert nat&uuml;rlich auch andersherum: Sie k&ouml;nnen ohne gr&ouml;&szlig;eren Aufwand daf&uuml;r sorgen, dass Outlook, wenn ein Benutzer ein neues Element wie etwa einen Kontakt anlegt, direkt den passenden in einer Datenbank gespeicherten Eintrag &auml;ndert.<\/p>\n<p class=\"zwischen-berschrift-oberer-spaltenrand\">Beispielhaft<\/p>\n<p>Um die Beispiele nachvollziehen zu k&ouml;nnen, kopieren Sie einfach den Inhalt der Datei <b>ThisOutlookSession.cls<\/b> in die gleichnamige Klasse im Outlook-VBA-Editor und passen die darin enthaltenen Pfadangaben an.<\/p>\n<p><b>Outlook-Ereignisse<\/b><\/p>\n<p>Zum Automatisieren von Outlook selbst bedarf es nat&uuml;rlich erstens eines kleinen Blickes in das Objektmodell und dort vor allem auf die Ereignisse, die beim Anlegen oder &auml;ndern von Outlook-Elementen ausgel&ouml;st werden &#8211; und es muss klar sein, dass Sie die notwendigen Prozeduren nat&uuml;rlich innerhalb von Outlook und nicht in einer Access-Anwendung anlegen. Der Ort f&uuml;r das Deklarieren ereignis-sensitiver Objekte in Outlook ist schnell gefunden: Es handelt sich dabei um ein standardm&auml;&szlig;ig vorhandenes Klassenmodul namens <b>ThisOutlookSession<\/b>. Die Ereignisprozeduren des <b>Application<\/b>-Objekts, also von Outlook selbst, werden hier, soweit vorhanden, automatisch ausgel&ouml;st. Das erkennen Sie ganz leicht, wenn Sie zum VBA-Editor wechseln (von Outlook aus am schnellsten per <b>Strg + F11<\/b>), dort das Modul <b>ThisOutlookSession <\/b>&ouml;ffnen und im linken Kombinationsfeld des Codefensters <b>Application <\/b>ausw&auml;hlen. Das rechte Kombinationsfeld liefert dann alle m&ouml;glichen Ereignisse. Die leere Ereignisprozedur, die das &ouml;ffnen einer Outlook-Instanz ausl&ouml;st, sieht dann etwa so aus:<\/p>\n<pre>Private Sub Application_Startup()\r\nEnd Sub<\/pre>\n<p>Ab jetzt kommt es darauf an, was Sie vorhaben: Soll eine Mail, ein Kontakt, ein Termin oder eine Aufgabe direkt nach dem Anlegen in einer Access-Tabelle gespeichert werden Oder muss dies auch bei &auml;nderungen geschehen<\/p>\n<p><b>Aufgaben nach Access<\/b><\/p>\n<p>Werfen Sie zun&auml;chst einen Blick auf das Anlegen einer neuen Aufgabe in Outlook. Diese soll direkt nach dem Erzeugen in eine Access-Tabelle wie die aus dem Beitrag <b>Outlook-Aufgaben <\/b>(Shortlink 498) exportiert werden.<\/p>\n<p>Was f&uuml;r ein Ereignis ben&ouml;tigen Sie hier Eines, das in Zusammenhang mit dem neuen Element (hier einer Aufgabe) selbst ausgel&ouml;st wird Nein! Das neue Element existiert ja zu dem Zeitpunkt, an dem Sie die Ereigniseigenschaft schreiben, die ein neues Aufgaben-Element nach Access schieben soll, noch gar nicht. Ein &#8222;New&#8220;- oder &#8222;Add&#8220;-Ereignis steht auch so gut wie nie f&uuml;r ein einzelnes Objekt zur Verf&uuml;gung, sondern meist f&uuml;r die Auflistung, die das zu erzeugende Element einmal aufnehmen wird. Und das ist in diesem Falle die <b>Items<\/b>-Auflistung des Aufgaben-Ordners.<\/p>\n<p>Damit Sie die Ereignisse eines Elements durch entsprechende Ereignisprozeduren abfangen k&ouml;nnen, m&uuml;ssen Sie dieses &#8211; wenn es nicht wie das <b>Application<\/b>-Element bereits vorhanden ist &#8211; zun&auml;chst deklarieren und instanzieren, wobei Sie beim Deklarieren das Schl&uuml;sselwort <b>WithEvents <\/b>verwenden. Die folgende Anweisung deklariert zun&auml;chst einen handels&uuml;blichen Outlook-Ordner:<\/p>\n<pre>Dim WithEvents objItems As Outlook.Items<\/pre>\n<p>Damit dieses Objekt explizit beim Anlegen eines bestimmten Outlook-Elements Ereignisse ausl&ouml;st, instanzieren Sie es mit dem entsprechenden Typ, hier der <b>Items<\/b>-Auflistung des Aufgaben-Ordners:<\/p>\n<pre>Private Sub Application_Startup()\r\n Set objItems = Application.Session.GetDefaultFolder(olFolderTasks).Items\r\nEnd Sub<\/pre>\n<p>Im Gegensatz zum Verwenden einer Outlook-Instanz von Access aus benutzen Sie hier nicht die <b>GetDefaultFolder<\/b>-Methode von <b>Application.GetNamespace(&#8222;MAPI&#8220;)<\/b>, sondern von <b>Application.Session<\/b>, was einen expliziten Zugriff auf die in der aktuellen Sitzung erzeugten und bearbeiteten Objekte zul&auml;sst.<\/p>\n<p>Wenn Sie nun einen Blick auf die Ereignisse der oben deklarierten Auflistung <b>objItems<\/b> werfen, finden Sie auch direkt etwas Passendes (siehe Bild 1).<\/p>\n<div class=\"image\">\n        <img decoding=\"async\" src=\"OutlookobjekteInAccessSpeichern-web-images\/pic001_opt.jpeg\" alt=\"pic001.tif\" \/>\n    <\/div>\n<div class=\"story\">\n<p><b><span style=\"color:darkgrey\">Bild 1: Mit diesen Ereignissen lassen sich Outlook-Elemente nach dem Anlegen, &auml;ndern oder Entfernen mit einer passenden Access-Datenbank synchronisieren.<\/span><\/b><\/p>\n<\/p><\/div>\n<p>F&uuml;r einen Test verwenden Sie zun&auml;chst das <b>ItemAdd<\/b>-Ereignis. Folgende Implementierung zeigt in einem Meldungsfenster den Betreff und den Inhalt einer frisch angelegten Aufgabe an, wobei der Parameter <b>Item <\/b>einen Verweis auf das passende Element liefert:<\/p>\n<pre>Private Sub objItems_ItemAdd(ByVal Item As _<br \/> Object)\r\n   Dim objTaskItem As Outlook.TaskItem\r\n   Set objTaskItem = Item\r\n   With objTaskItem\r\n     MsgBox .Subject &amp; \" \" &amp; .Body\r\n   End With\r\nEnd Sub<\/pre>\n<p><!--30percent--><\/p>\n<p>Um diese Routine zu testen, schlie&szlig;en Sie Outlook nach der Eingabe, best&auml;tigen das Speichern des Moduls <b>VbaProjekt.OTM <\/b>und &ouml;ffnen Outlook erneut. Bereits beim &ouml;ffnen instanziert Outlook die festgelegte Aufgaben-Auflistung und ist von nun an bereit, auf neu angelegte Elemente mit der oben beschriebenen Routine zu reagieren. Beachten Sie, dass Outlook die Ereignisse immer erst beim Speichern des neu angelegten oder ge&auml;nderten Elements ausl&ouml;st.<\/p>\n<p>Die Methode <b>ItemChange <\/b>k&ouml;nnen Sie genauso wie <b>ItemAdd <\/b>verwenden, um ge&auml;nderte Elemente mit der Datenbank zu synchronisieren.<\/p>\n<p>Allein die <b>ItemRemove<\/b>-Methode vermag ihre Aufgabe nicht recht zu l&ouml;sen &#8211; das geht allein aus ihrer Deklaration hervor. Die Parameterliste ist n&auml;mlich leer, das hei&szlig;t, dass die Routine keine Informationen &uuml;ber das gel&ouml;schte Element liefert, sondern allein &uuml;ber den L&ouml;schvorgang selbst informiert:<\/p>\n<pre>Private Sub objItems_ItemRemove()\r\nEnd Sub<\/pre>\n<p class=\"zwischen-berschriftnachquellcode\">L&ouml;schsynchronisation<\/p>\n<p>Um ein innerhalb von Outlook gel&ouml;schtes Element auch in der passenden Access-Tabelle zu l&ouml;schen, m&uuml;ssen Sie zu anderen Mitteln greifen. Die richtige Methode namens <b>Delete <\/b>liefert n&auml;mlich das <b>TaskItem<\/b>-Objekt, f&uuml;r andere Elemente gibt es Objekte wie <b>MailItem <\/b>(E-Mail), <b>ContactItem <\/b>(Kontakt) oder <b>AppointmentItem <\/b>(Termine).<\/p>\n<p>Also deklarieren Sie zun&auml;chst im gleichen Modul eine Objektvariable mit Ereignisbehandlung zum Verweis auf das zu l&ouml;schende Element:<\/p>\n<pre>Dim WithEvents objTaskItem As Outlook.TaskItem<\/pre>\n<p>F&uuml;r andere Elemente deklarieren Sie dieses als eines der oben genannten Objekte. Nun m&uuml;ssen Sie allerdings noch einen Weg finden, einen Verweis auf das zu l&ouml;schende Objekt zu erstellen. Was passiert den &uuml;berhaupt im Verlauf eines L&ouml;schvorgangs Zun&auml;chst markiert man das zu l&ouml;schende Objekt und initialisiert dann den L&ouml;schvorgang selbst, indem man beispielsweise auf die <b>Entf<\/b>-Taste klickt oder den <b>L&ouml;schen<\/b>-Eintrag aus dem Kontextmen&uuml; ausw&auml;hlt.<\/p>\n<p>Interessant ist die Auswahl des zu l&ouml;schenden Objekts: Forschen wir also nach einem Ereignis, das beim Ausw&auml;hlen eines Outlook-Elements ausgel&ouml;st wird, und fangen ganz oben an: bei den Ereignissen des <b>Application<\/b>-Objekts. Mmmh &#8230; viel versprechend sieht das nicht aus; vielleicht hilft <b>Application_ItemLoad <\/b>weiter.<\/p>\n<p>Um dies zu testen, legen Sie einfach die passende Ereignisprozedur an und f&uuml;gen eine simple Anweisung wie folgt hinzu:<\/p>\n<pre>Private Sub Application_ItemLoad(ByVal _<br \/> Item As Object)\r\n   MsgBox \"ItemLoad aufgerufen\"\r\nEnd Sub<\/pre>\n<p>Klicken Sie dann in eine der Listen (beispielsweise E-Mails, Kontakte etc.) und seien Sie erfreut: Die Auswahl eines der Eintr&auml;ge l&ouml;st dieses Ereignis aus. Das ist perfekt, Sie m&uuml;ssen also nur noch pr&uuml;fen, ob es sich beim ausgew&auml;hlten Element um den richtigen Typ handelt (immerhin wollen wir hier erstmal nur Aufgaben behandeln) und diesen gegebenenfalls der Objektvariablen <b>objTaskItem <\/b>zuweisen:<\/p>\n<pre>Private Sub Application_ItemLoad(ByVal _<br \/> Item As Object)\r\n   If Item.Class = olTask Then\r\n     Set objTaskItem = Item\r\n   End If\r\nEnd Sub<\/pre>\n<p>Zu beachten ist hier, dass das mit dem Parameter <b>Item <\/b>referenzierte Objekt zu diesem Zeitpunkt nur zwei Eigenschaften liefert: <b>Class <\/b>und <b>MessageClass<\/b>, wobei in diesem Fall <b>Class <\/b>die interessantere ist, weil sie Informationen &uuml;ber den Typ des Outlook-Elements liefert und wie in obiger Routine ausgewertet werden kann. Die m&ouml;glichen Werte f&uuml;r die <b>Class<\/b>-Eigenschaft finden Sie &uuml;brigens, indem Sie im Objektkatalog zun&auml;chst nach dem Begriff <b>Class <\/b>suchen und, wenn m&ouml;glich, die Zielbibliothek einschr&auml;nken, womit in diesem Fall die Outlook-Bibliothek gemeint ist. Finden Sie dann das passende Objekt &#8211; hier das <b>TaskItem<\/b>-Objekt &#8211; und klicken Sie in der Objektliste auf die Eigenschaft (<b>Class<\/b>). Der Objektkatalog zeigt dann wie in Bild 2 den Datentyp dieser Eigenschaft an, in diesem Fall <b>OlObjectClass<\/b>. Klicken Sie auf den gr&uuml;nen Link zu diesem Datentyp, zeigt der Objektkatalog eine Liste aller f&uuml;r diesen Datentyp verf&uuml;gbaren Werte an (siehe Bild 3).<\/p>\n<div class=\"image\">\n        <img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2007_05\/OutlookobjekteInAccessSpeichern-web-images\/pic002_opt.jpeg\" alt=\"pic002.tif\" \/>\n    <\/div>\n<div class=\"story\">\n<p><b><span style=\"color:darkgrey\">Bild 2: &uuml;ber die Eigenschaft &#8230;<\/span><\/b><\/p>\n<\/p><\/div>\n<div class=\"image\">\n        <img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2007_05\/OutlookobjekteInAccessSpeichern-web-images\/pic003_opt.jpeg\" alt=\"pic003.tif\" \/>\n    <\/div>\n<div class=\"story\">\n<p><b><span style=\"color:darkgrey\">Bild 3: &#8230; finden sich meist auch ihre Konstanten.<\/span><\/b><\/p>\n<\/p><\/div>\n<p>Wenn Sie nun wissen wollen, welcher dem <b>TaskItem <\/b>entspricht, m&uuml;ssen Sie der <b>LoadItem<\/b>-Ereignisprozedur nur eine Anweisung hinzuf&uuml;gen, die den Wert der <b>Class<\/b>-Eigenschaft des aktuell geladenen Elements liefert:<\/p>\n<pre>Private Sub Application_ItemLoad(ByVal _<br \/> Item As Object)\r\n   MsgBox Item.Class\r\nEnd Sub<\/pre>\n<p>Bei einer Aufgabe erscheint hier etwa der Wert <b>48<\/b>, bei einer E-Mail der Wert <b>43 <\/b>und so weiter. Beachtenswert ist, dass <b>ItemLoad <\/b>in manchen F&auml;llen nicht allein durch das Markieren ausgel&ouml;st wird, da Outlook nicht f&uuml;r all diese Aktionen Informationen &uuml;ber das jeweilige Element laden muss. Wenn Sie etwa auf einen Termin im Kalender klicken, wird dieser noch nicht geladen, wenn Sie ihn per Doppelklick &ouml;ffnen oder auch nur das Kontextmen&uuml; anzeigen, dann schon.<\/p>\n<p>Die zum Wert passende Konstante finden Sie nun im Objektkatalog, wenn Sie die vorhandenen Werte f&uuml;r die <b>Class<\/b>-Eigenschaft durchlaufen.<\/p>\n<p>Da Sie nun einen Verweis auf das zu l&ouml;schende <b>TaskItem<\/b>-Element besitzen, k&ouml;nnen Sie auch dessen Ereignisse nutzen: In diesem Fall hilft das <b>BeforeDelete<\/b>-Ereignis weiter, das vor dem L&ouml;schen ausgel&ouml;st wird und diesen Vorgang noch abbrechen kann. Dazu m&uuml;ssen Sie innerhalb der Ereignisprozedur nur den Wert des Parameters <b>Cancel <\/b>auf <b>True <\/b>einstellen.<\/p>\n<p>In diesem Fall wollen wir jedoch zun&auml;chst einen einfachen Hinweis auf das L&ouml;schen einer Outlook-Aufgabe erhalten, was sich mit folgender Routine bewerkstelligen l&auml;sst:<\/p>\n<pre>Private Sub objTaskItem_BeforeDelete(ByVal _<br \/> Item As Object, Cancel As Boolean)\r\n   MsgBox \"Delete \" &amp; objTaskItem.Subject _<br \/> &amp; \" \" &amp; objTaskItem.Body\r\nEnd Sub<\/pre>\n<p class=\"zwischen-berschriftnachquellcode\">Synchronisieren geht &uuml;ber Studieren<\/p>\n<p>Nachdem Sie alle Ereignisse beisammen haben, die beim Hinzuf&uuml;gen, L&ouml;schen und &auml;ndern von Outlook-Elementen ausgel&ouml;st werden, m&uuml;ssen Sie diese nur noch so mit Leben f&uuml;llen, dass sie die vorgenommenen &auml;nderungen in die Access-Tabelle &uuml;bertragen.<\/p>\n<p>Das ist f&uuml;r einen Access-Entwickler nur noch Routinearbeit, wenn man einmal vom Instanzieren der Ziel-Datenbank absieht. Sie verwenden n&auml;mlich nicht einfach die folgenden Anweisungen:<\/p>\n<pre>Dim db As DAO.Database\r\nSet db = CurrentDB<\/pre>\n<p>Stattdessen kommt die <b>OpenDatabase<\/b>-Methode zum Einsatz:<\/p>\n<pre>Dim db As DAO.Database\r\nSet db = DBEngine.OpenDatabase(\"&lt;Pfad&gt;\\&lt;Datei&gt;\")<\/pre>\n<p>Nat&uuml;rlich m&uuml;ssen Sie dazu im Outlook-VBA-Projekt einen Verweis auf die DAO-Bibliothek oder, wenn Sie eine Datenbank im Format von Access 2007 (.accdb) verwenden, einen Verweis auf die Bibliothek <b>Microsoft Office 12.0 Access Database Engine Object Library <\/b>hinzuf&uuml;gen.<\/p>\n<p>Anschlie&szlig;end k&ouml;nnen Sie wie gewohnt auf die Tabellen der referenzierten Datenbank zugreifen. Aus Platzgr&uuml;nden soll dieser Artikel nicht alle Aktionen (anlegen, l&ouml;schen, &auml;ndern) beschreiben, sondern beschr&auml;nkt sich auf das Anlegen eines neuen <b>TaskItem<\/b>-Elements in Outlook und dessen Pendant in der Access-Tabelle.<\/p>\n<p>Wie dies funktioniert, zeigt Listing 1. Die Routine &ouml;ffnet die Zieldatenbank, erzeugt ein Recordset auf Basis der Zieltabelle und schreibt die Eigenschaftswerte des neu erzeugten <b>TaskItem<\/b>-Elements in diese Tabelle. Schlie&szlig;lich fragt sie noch den Prim&auml;rschl&uuml;sselwert dieser Tabelle ab und schreibt ihn in die Eigenschaft <b>BillingInformation<\/b> der neuen Aufgabe.<\/p>\n<div class=\"abbildung\">\n<p class=\"kastentabelleheader\">Listing 1: Diese Ereignisprozedur schreibt eine in Outlook frisch angelegte Aufgabe in die passende Access-Tabelle.<\/p>\n<pre>Private Sub objItems_ItemAdd(ByVal Item As Object)<br \/>\r\n   Dim db As DAO.Database\r\n   Dim objTaskItem As Outlook.TaskItem\r\n   Dim rst As DAO.Recordset\r\n  Set db = DBEngine.OpenDatabase(\"&lt;Pfad&gt;\\&lt;Datei&gt;\")\r\n   Set objTaskItem = Item\r\n   Set rst = db.OpenRecordset(\"SELECT * FROM tblAufgaben WHERE 1=2\", _<br \/> dbOpenDynaset)\r\n  With objTaskItem\r\n     rst.AddNew\r\n     With rst\r\n       !Subject = objTaskItem.Subject\r\n       !Body = objTaskItem.Body\r\n       !StartDate = objTaskItem.StartDate\r\n       !DueDate = objTaskItem.DueDate\r\n       !DateCompleted = objTaskItem.DateCompleted\r\n       !PercentComplete = objTaskItem.PercentComplete\r\n       !Importance = objTaskItem.Importance\r\n     End With\r\n     If objTaskItem.BillingInformation = \"\" Then\r\n       objTaskItem.BillingInformation = rst!ID\r\n     End If\r\n     rst.Update\r\n   End With<br \/>\r\n   Set db = Nothing<br \/>\r\nEnd Sub<\/pre>\n<\/p><\/div>\n<p>Dies dient dem sp&auml;teren Synchronisieren von Aufgaben zwischen Outlook und Access; weitere Informationen dazu finden Sie im Beitrag Outlook-Aufgaben (Shortlink 498).<\/p>\n<p>Die &uuml;brigen Ereignisprozeduren, die beim &auml;ndern und L&ouml;schen f&uuml;r eine Synchronisation mit der Access-Tabelle sorgen, finden Sie im Beispielmodul.<\/p>\n<p class=\"zwischen-berschriftnachquellcode\">Zusammenfassung und Ausblick<\/p>\n<p>Outlook-Objekte lassen sich auch von Outlook aus beim Anlegen direkt mit den Daten in entsprechenden Access-Tabellen synchronisieren.<\/p>\n<p>Sie haben die dazu notwendigen Techniken kennen gelernt und einen kleinen Einblick in das Objektmodell von Outlook und seine Ereignisse erhalten.<\/p>\n<p>Was hier am Beispiel von Aufgaben exemplarisch gezeigt wurde, l&auml;sst sich leicht auf Basis anderer Objekte wie E-Mails, Kontakte oder Termine nachstellen.<\/p>\n<h3>Downloads zu diesem Beitrag<\/h3>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>Outlookaufgaben.accdb<\/p>\n<p>Outlookaufgaben.mdb<\/p>\n<p>ThisOutlookSession.cls<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/FD383E84-3816-427E-AD58-A7BC256ACA09\/aiu_500.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bereits einige Beitr&auml;ge in Access im Unternehmen besch&auml;ftigt sich mit dem Im- und Export von Outlook-Objekten zwischen Access und Outlook. Dabei erfolgt das Synchronisieren immer zu einem vom Benutzer festgelegten Zeitpunkt. Was aber, wenn man in Access immer auf die aktuell in Outlook gespeicherten Daten zugreifen m&ouml;chte, ohne die Daten manuell abzugleichen Ein Blick hinter die Kulissen des Outlook-Objektmodells bringt Lichts ins Dunkel.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662007,66052007,44000026,44000033],"tags":[],"class_list":["post-55000500","post","type-post","status-publish","format-standard","hentry","category-662007","category-66052007","category-Interaktiv","category-Outlook"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Outlook-Objekte in Access speichern - Access im Unternehmen<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Outlook-Objekte in Access speichern\" \/>\n<meta property=\"og:description\" content=\"Bereits einige Beitr&auml;ge in Access im Unternehmen besch&auml;ftigt sich mit dem Im- und Export von Outlook-Objekten zwischen Access und Outlook. Dabei erfolgt das Synchronisieren immer zu einem vom Benutzer festgelegten Zeitpunkt. Was aber, wenn man in Access immer auf die aktuell in Outlook gespeicherten Daten zugreifen m&ouml;chte, ohne die Daten manuell abzugleichen Ein Blick hinter die Kulissen des Outlook-Objektmodells bringt Lichts ins Dunkel.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-11T21:18:14+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Minhorst\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Minhorst\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"11\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Outlook-Objekte in Access speichern\",\"datePublished\":\"2021-02-11T21:18:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/\"},\"wordCount\":2008,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg04.met.vgwort.de\\\/na\\\/926450f28811408d91569ed614bb9561\",\"articleSection\":[\"2007\",\"5\\\/2007\",\"Interaktiv\",\"Outlook\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/\",\"name\":\"Outlook-Objekte in Access speichern - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg04.met.vgwort.de\\\/na\\\/926450f28811408d91569ed614bb9561\",\"datePublished\":\"2021-02-11T21:18:14+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg04.met.vgwort.de\\\/na\\\/926450f28811408d91569ed614bb9561\",\"contentUrl\":\"http:\\\/\\\/vg04.met.vgwort.de\\\/na\\\/926450f28811408d91569ed614bb9561\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/OutlookObjekte_in_Access_speichern\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Outlook-Objekte in Access speichern\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"name\":\"Access im Unternehmen\",\"description\":\"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/access-im-unternehmen.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\",\"name\":\"Andr\u00e9 Minhorst Verlag\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"contentUrl\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"width\":370,\"height\":111,\"caption\":\"Andr\u00e9 Minhorst Verlag\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Outlook-Objekte in Access speichern - Access im Unternehmen","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/","og_locale":"de_DE","og_type":"article","og_title":"Outlook-Objekte in Access speichern","og_description":"Bereits einige Beitr&auml;ge in Access im Unternehmen besch&auml;ftigt sich mit dem Im- und Export von Outlook-Objekten zwischen Access und Outlook. Dabei erfolgt das Synchronisieren immer zu einem vom Benutzer festgelegten Zeitpunkt. Was aber, wenn man in Access immer auf die aktuell in Outlook gespeicherten Daten zugreifen m&ouml;chte, ohne die Daten manuell abzugleichen Ein Blick hinter die Kulissen des Outlook-Objektmodells bringt Lichts ins Dunkel.","og_url":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/","og_site_name":"Access im Unternehmen","article_published_time":"2021-02-11T21:18:14+00:00","og_image":[{"url":"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"11\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Outlook-Objekte in Access speichern","datePublished":"2021-02-11T21:18:14+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/"},"wordCount":2008,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#primaryimage"},"thumbnailUrl":"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561","articleSection":["2007","5\/2007","Interaktiv","Outlook"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/","url":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/","name":"Outlook-Objekte in Access speichern - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#primaryimage"},"thumbnailUrl":"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561","datePublished":"2021-02-11T21:18:14+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#primaryimage","url":"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561","contentUrl":"http:\/\/vg04.met.vgwort.de\/na\/926450f28811408d91569ed614bb9561"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/OutlookObjekte_in_Access_speichern\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Outlook-Objekte in Access speichern"}]},{"@type":"WebSite","@id":"https:\/\/access-im-unternehmen.de\/#website","url":"https:\/\/access-im-unternehmen.de\/","name":"Access im Unternehmen","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access","publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/access-im-unternehmen.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/access-im-unternehmen.de\/#organization","name":"Andr\u00e9 Minhorst Verlag","url":"https:\/\/access-im-unternehmen.de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/","url":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","contentUrl":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","width":370,"height":111,"caption":"Andr\u00e9 Minhorst Verlag"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","caption":"Andr\u00e9 Minhorst"}}]}},"_links":{"self":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000500","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/comments?post=55000500"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000500\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55000500"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55000500"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55000500"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}