{"id":55000240,"date":"2014-08-01T00:00:00","date_gmt":"2020-01-24T15:59:09","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=240"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Datenmakros_II_Datenoperationen","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html","title":{"rendered":"Datenmakros II: Datenoperationen"},"content":{"rendered":"<p class='introduction'>Datenmakros und benannte Makros liefern vor allem die interessante M&ouml;glichkeit, grundlegende Datenoperationen durchzuf&uuml;hren &#8211; also beispielsweise das Anlegen neuer Datens&auml;tze, das Bearbeiten oder L&ouml;schen vorhandener Datens&auml;tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens&auml;tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1402_Makros.mdb<\/b>.<\/p>\n<h2>Datenoperationen<\/h2>\n<p>Die neuen Datenmakros sollen es vor allem erm&ouml;glichen, endlich auch per Makro einfache Datenoperationen auszuf&uuml;hren &#8211; also etwa einen neuen Datensatz anzulegen, vorhandene Datens&auml;tze zu &auml;ndern und zu l&ouml;schen oder auch einfach auf die Felder eines Datensatzes zuzugreifen.<\/p>\n<p>Diese Operationen bilden Sie typischerweise unter VBA ab &#8211; und zwar mit dem <b>Recordset<\/b>-Objekt und Befehlen wie <b>AddNew<\/b>, <b>Edit<\/b>, <b>Update <\/b>oder <b>FindFirst<\/b>.<\/p>\n<p>Zu Testzwecken haben wir eine kleine Tabelle namens <b>tblKunden <\/b>angelegt, die allerdings nur das Prim&auml;rschl&uuml;sselfeld <b>KundeID<\/b>, das Fremdschl&uuml;sselfeld <b>AnredeID <\/b>sowie die beiden Textfelder <b>Vorname <\/b>und <b>Nachname <\/b>enth&auml;lt (siehe Bild 1).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_009.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_009.png\" alt=\"Beispieltabelle f&uuml;r Testzwecke\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Beispieltabelle f&uuml;r Testzwecke<\/p>\n<p>Wenn Sie nun beispielsweise einen neuen Datensatz in der Tabelle anlegen m&ouml;chten, ben&ouml;tigen Sie ein benanntes Makro f&uuml;r diese Tabelle. Dieses legen Sie bei in der Datenblattansicht ge&ouml;ffneter Tabelle &uuml;ber den Ribbonbefehl <b>Ta-bel-le|Be-nannte Makros|Be-nanntes Ma-kro|Be-nanntes Makro erstellen<\/b> an.<\/p>\n<p>In diesem Makro f&uuml;gen Sie nun zun&auml;chst den Befehl <b>Datensatz erstellen in <\/b>ein und w&auml;hlen die Tabelle <b>tblKunden <\/b>als Ziel der Aktion aus.<\/p>\n<p>Dieser Aktion k&ouml;nnen Sie weitere Befehle unterordnen, und zwar <b>Gruppieren<\/b>, <b>Kommentar<\/b>, <b>Wenn<\/b>, <b>AbbrechenDatensatz&auml;nderung<\/b>, <b>FestlegenFeld <\/b>und <b>FestlegenLokaleVar<\/b>.<\/p>\n<p>In diesem Fall wollen wir die drei Felder <b>AnredeID<\/b>, <b>Vorname <\/b>und <b>Nachname <\/b>mit den entsprechenden Werten f&uuml;llen. Dies erledigen wir, indem wir drei Mal die Makroaktion <b>FestlegenFeld <\/b>hinzuf&uuml;gen, unter <b>Name <\/b>das Zielfeld ausw&auml;hlen und unter <b>Wert <\/b>den einzutragenden Wert angeben (siehe Bild 2).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_010.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_010.png\" alt=\"Datenmakro zum Anlegen eines neuen Datensatzes in der Tabelle tblKunden\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Datenmakro zum Anlegen eines neuen Datensatzes in der Tabelle tblKunden<\/p>\n<p>Dabei ist zu beachten, dass Sie Literale in Anf&uuml;hrungszeichen einfassen. Anderenfalls sucht Access nach einem entsprechenden Ausdruck und l&ouml;st einen Fehler aus.<\/p>\n<p>Dieses Makro soll nun also einen Datensatz zur Tabelle <b>tblKunden <\/b>hinzuf&uuml;gen. Aber wie rufen wir das Makro auf Dazu ben&ouml;tigen wir ein weiteres Makro, dem wir die Makroaktion <b>Ausf&uuml;hrenDatenmakro <\/b>zuweisen. Diese erwartet als Parameter den Namen des aufzurufenden Datenmakros mit f&uuml;hrendem Tabellennamen, also hier <b>tblKunden.dmkKundeAnlegen <\/b>(siehe Bild 3). Ein erster Testaufruf des Makros <b>makKundeAnlegen <\/b>bringt das gew&uuml;nschte Ergebnis &#8211; der Datensatz wird angelegt.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_011.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_011.png\" alt=\"Dieses Makro ruft das Datenmakro zum Anlegen eines Kundendatensatzes auf.\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 3: Dieses Makro ruft das Datenmakro zum Anlegen eines Kundendatensatzes auf.<\/p>\n<h2>Datenmakro mit Parametern<\/h2>\n<p>Als N&auml;chstes wollen wir das doch recht statische Makro etwas dynamischer gestalten &#8211; und zwar, indem wir die in die Tabelle <b>tblKunden <\/b>einzuf&uuml;genden Werte per Parameter &uuml;bergeben.<\/p>\n<p>Dazu erstellen wir ein weiteres benanntes Makro f&uuml;r die Tabelle <b>tblKunden<\/b>. Diesmal klicken wir jedoch zun&auml;chst drei Mal auf den Text <b>Parameter erstellen <\/b>oben rechts im Makro-Entwurf und erzeugen so drei Zeilen zur Eingabe von Parametern. Diese nennen wir <b>prmAnredeID<\/b>, <b>prmVorname <\/b>und <b>prmNachname<\/b>.<\/p>\n<p>Nun f&uuml;gen Sie wieder die Makroaktion <b>Datensatz erstellen in <\/b>hinzu, legen die Tabelle <b>tblKunden <\/b>als Ziel fest und tragen unterhalb dieser Makroaktion drei Mal den Befehl <b>FestlegenFeld <\/b>ein. Die Feldnamen lauten wieder wie im vorherigen Beispiel. Allerdings geben wir diesmal nicht direkt die einzuf&uuml;genden Werte an, sondern die Namen der weiter oben definierten Parameter &#8211; also etwa den Parameter <b>prmAnredeID <\/b>f&uuml;r das Feld <b>AnredeID<\/b>. Die Parameter lassen sich bequem per IntelliSense aus der Liste der verf&uuml;gbaren Elemente ausw&auml;hlen (siehe Bild 4).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_012.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_012.png\" alt=\"Benanntes Makro mit Parametern\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 4: Benanntes Makro mit Parametern<\/p>\n<p>Nun folgt der zweite Teil: die Definition des Makros, mit dem wir das Datenmakro aufrufen und diesem die Werte f&uuml;r die Parameter &uuml;bergeben.<\/p>\n<p>Dazu erstellen Sie ein neues Makro namens <b>macKundeAnlegenMitParameter <\/b>und f&uuml;gen diesem wieder die Makroaktion <b>Ausf&uuml;hrenDatenmakro <\/b>hinzu (siehe Bild 5). Diesmal w&auml;hlen Sie das Makro <b>tblKunden.dmkKundeAnlegenMitParameter <\/b>f&uuml;r den Parameter <b>Makroname <\/b>aus. Nach der Auswahl des auszuf&uuml;hrenden Makros erscheinen gleich die drei f&uuml;r das benannte Makro definierten Parameter. Hier geben wir wieder die gew&uuml;nschten Werte ein (Anf&uuml;hrungszeichen bei Zeichenketten nicht vergessen) und f&uuml;hren das Makro dann aus. Es funktioniert &#8211; auch dies legt den Datensatz mit den angegebenen Daten an.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_013.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_013.png\" alt=\"Aufruf eines benannten Makros mit Parametern\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 5: Aufruf eines benannten Makros mit Parametern<\/p>\n<h2>Parameter per VBA &uuml;bergeben<\/h2>\n<p>Nun m&ouml;chten wir aber vielleicht das benannte Makro per VBA aufrufen. Wie &uuml;bergeben wir die notwendigen Parameter mit der Methode <b>RunDataMacro<\/b> Der Versuch, dieses einfach ohne Angabe von Parametern aufzurufen, f&uuml;hrt direkt zu einem Laufzeitfehler (siehe Bild 6).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_020.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_020.png\" alt=\"Aufruf eines Datenmakros ohne Angabe der Parameter\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 6: Aufruf eines Datenmakros ohne Angabe der Parameter<\/p>\n<p>Die Antwort lautet: Wir &uuml;bergeben die Parameter gar nicht mit dieser Methode. Stattdessen legen wir die Parameter vorher fest, und zwar mit einer eigenen <b>DoCmd<\/b>-Methode. Das sieht dann f&uuml;r dieses Beispiel wie in Bild 7 aus. Wichtig ist an dieser Stelle, dass Sie Zeichenketten nicht nur in Anf&uuml;hrungszeichen, sondern zus&auml;tzlich in Hochkommata einfassen (oder zus&auml;tzliche doppelte Anf&uuml;hrungszeichen: <b>&#8222;&#8220;&#8220;Maria&#8220;&#8220;&#8220;<\/b>).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_021.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_021.png\" alt=\"Vorherige Angabe der Parameter\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 7: Vorherige Angabe der Parameter<\/p>\n<p>Nach dem Aufruf der drei <b>DoCmd.SetParameter<\/b>-Anweisungen sowie der <b>RunDataMacro<\/b>-Methode wird der neue Datensatz in der Tabelle <b>tblKunden <\/b>angelegt. Anzumerken ist noch, dass die mit <b>SetParameter <\/b>gesetzten Parameter mit dem Aufruf der <b>RunDataMacro<\/b>-Methode geleert werden, sodass ein erneuter Aufruf des benannten Makros einen Fehler ausl&ouml;st.<\/p>\n<h2>DLookup im Makro<\/h2>\n<p>Nun erh&ouml;hen wir den Schwierigkeitsgrad: Ein neues benanntes Makro soll nur die Anrede, aber nicht den Prim&auml;rschl&uuml;sselwert des entsprechenden Datensatzes in der Tabelle <b>tblAnreden <\/b>als Parameter erhalten. Das hei&szlig;t, dass das benannte Makro selbst die <b>AnredeID <\/b>f&uuml;r die angegebene Anrede ermitteln muss.<\/p>\n<p>Das ist eigentlich recht einfach &#8211; wenn man wei&szlig;, auf welche Kleinigkeiten man achten muss. In diesem Fall erstellen Sie wiederum ein neues benanntes Makro f&uuml;r die Tabelle <b>tblKunden<\/b>. Diesmal geben Sie statt des Parameters <b>prmAnredeID <\/b>den Parameter <b>prmAnrede <\/b>an &#8211; es soll also nicht mehr direkt die <b>AnredeID <\/b>&uuml;bergeben werden, sondern die Bezeichnung der Anrede.<\/p>\n<p>Um die <b>AnredeID <\/b>aus der Tabelle <b>tblAnreden <\/b>zu ermitteln, gehen wir wie folgt vor: Zun&auml;chst legen Sie im benannten Makro <b>dmcKundeAnlegenMitAnrede <\/b>die Makroaktion <b>Datensatz nachschlagen in <\/b>an. Dieser weisen Sie als Quelle die Tabelle <b>tblAnreden <\/b>zu. Die erste H&uuml;rde, die den meisten etwas Kopfzerbrechen bereiten d&uuml;rfte, ist die Formulierung der Bedingung, die genau den Datensatz mit der angegebenen Anrede liefert. Intuitiv w&uuml;rde man hier einen Ausdruck wie den folgenden unterbringen:<\/p>\n<pre>=\"Anrede = '\" & prmAnrede & \"'\"<\/pre>\n<p>Dieser Versuch misslingt jedoch. An dieser Stelle ist dann guter Rat teuer. Wie soll ich ohne meine gewohnten VBA-Werkzeuge mal eben debuggen und beispielsweise herausfinden, welches Ergebnis mir der hier verwendete Ausdruck liefert Aber das ist kein Problem: Es gibt ja die Makroaktion <b>ProtokollierenEreignis<\/b>, mit dem wir einen beliebigen Ausdruck in die Tabelle <b>USysApplicationLog <\/b>eintragen k&ouml;nnen. Also verwenden wir diesen wie in Bild 8 und lassen uns das Ergebnis des ermittelten Ausdrucks in dieser Tabelle ausgeben.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_240_014.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_240_014.png\" alt=\"Benanntes Makro inklusive Ermittlung von Lookup-Werten\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 8: Benanntes Makro inklusive Ermittlung von Lookup-Werten<\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 400 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000240\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Passwort<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Angemeldet bleiben<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000240?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000240\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"75cf418e65\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Anmelden\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Datenmakros und benannte Makros liefern vor allem die interessante M&ouml;glichkeit, grundlegende Datenoperationen durchzuf&uuml;hren &#8211; also beispielsweise das Anlegen neuer Datens&auml;tze, das Bearbeiten oder L&ouml;schen vorhandener Datens&auml;tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens&auml;tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.<\/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,"footnotes":""},"categories":[662014,66042014,44000016],"tags":[],"class_list":["post-55000240","post","type-post","status-publish","format-standard","hentry","category-662014","category-66042014","category-Makros"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Access [basics] - DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Datenmakros II: Datenoperationen - Access [basics]\" \/>\n\t\t<meta property=\"og:description\" content=\"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t\t<meta property=\"og:image:height\" content=\"127\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-24T15:59:09+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Datenmakros II: Datenoperationen - Access [basics]\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#blogposting\",\"name\":\"Datenmakros II: Datenoperationen - Access [basics]\",\"headline\":\"Datenmakros II: Datenoperationen\",\"author\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"..\\\/tl_files\\\/images\\\/pic_240_009.png\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html\\\/#articleImage\"},\"datePublished\":\"2014-08-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#webpage\"},\"articleSection\":\"2014, 4\\\/2014, Makros\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-basics.de\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014#listItem\",\"name\":\"2014\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014#listItem\",\"position\":2,\"name\":\"2014\",\"item\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/4\\\/2014#listItem\",\"name\":\"4\\\/2014\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/4\\\/2014#listItem\",\"position\":3,\"name\":\"4\\\/2014\",\"item\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/4\\\/2014\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#listItem\",\"name\":\"Datenmakros II: Datenoperationen\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014#listItem\",\"name\":\"2014\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#listItem\",\"position\":4,\"name\":\"Datenmakros II: Datenoperationen\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/category\\\/2014\\\/4\\\/2014#listItem\",\"name\":\"4\\\/2014\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"url\":\"https:\\\/\\\/access-basics.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/access-basics.de\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/logo400.png\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html\\\/#organizationLogo\",\"width\":400,\"height\":127},\"image\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\",\"url\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#webpage\",\"url\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html\",\"name\":\"Datenmakros II: Datenoperationen - Access [basics]\",\"description\":\"Datenmakros und benannte Makros liefern vor allem die interessante M\\u00f6glichkeit, grundlegende Datenoperationen durchzuf\\u00fchren - also beispielsweise das Anlegen neuer Datens\\u00e4tze, das Bearbeiten oder L\\u00f6schen vorhandener Datens\\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/Datenmakros_II_Datenoperationen.html#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/index.php\\\/author\\\/andreminhorst-com#author\"},\"datePublished\":\"2014-08-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-basics.de\\\/#website\",\"url\":\"https:\\\/\\\/access-basics.de\\\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-basics.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Datenmakros II: Datenoperationen - Access [basics]","description":"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.","canonical_url":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#blogposting","name":"Datenmakros II: Datenoperationen - Access [basics]","headline":"Datenmakros II: Datenoperationen","author":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"publisher":{"@id":"https:\/\/access-basics.de\/#organization"},"image":{"@type":"ImageObject","url":"..\/tl_files\/images\/pic_240_009.png","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html\/#articleImage"},"datePublished":"2014-08-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#webpage"},"isPartOf":{"@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#webpage"},"articleSection":"2014, 4\/2014, Makros"},{"@type":"BreadcrumbList","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/access-basics.de\/#listItem","position":1,"name":"Home","item":"https:\/\/access-basics.de\/","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014#listItem","name":"2014"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014#listItem","position":2,"name":"2014","item":"https:\/\/access-basics.de\/index.php\/category\/2014","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014\/4\/2014#listItem","name":"4\/2014"},"previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014\/4\/2014#listItem","position":3,"name":"4\/2014","item":"https:\/\/access-basics.de\/index.php\/category\/2014\/4\/2014","nextItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#listItem","name":"Datenmakros II: Datenoperationen"},"previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014#listItem","name":"2014"}},{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#listItem","position":4,"name":"Datenmakros II: Datenoperationen","previousItem":{"@type":"ListItem","@id":"https:\/\/access-basics.de\/index.php\/category\/2014\/4\/2014#listItem","name":"4\/2014"}}]},{"@type":"Organization","@id":"https:\/\/access-basics.de\/#organization","name":"Access [basics]","description":"DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","url":"https:\/\/access-basics.de\/","logo":{"@type":"ImageObject","url":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html\/#organizationLogo","width":400,"height":127},"image":{"@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author","url":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#webpage","url":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html","name":"Datenmakros II: Datenoperationen - Access [basics]","description":"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/access-basics.de\/#website"},"breadcrumb":{"@id":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html#breadcrumblist"},"author":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"creator":{"@id":"https:\/\/access-basics.de\/index.php\/author\/andreminhorst-com#author"},"datePublished":"2014-08-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/access-basics.de\/#website","url":"https:\/\/access-basics.de\/","name":"Access [basics]","description":"DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","inLanguage":"de-DE","publisher":{"@id":"https:\/\/access-basics.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Access [basics] - DAS ACCESS-MAGAZIN F\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN","og:type":"article","og:title":"Datenmakros II: Datenoperationen - Access [basics]","og:description":"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.","og:url":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html","og:image":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","og:image:secure_url":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png","og:image:width":400,"og:image:height":127,"article:published_time":"2020-01-24T15:59:09+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"Datenmakros II: Datenoperationen - Access [basics]","twitter:description":"Datenmakros und benannte Makros liefern vor allem die interessante M\u00f6glichkeit, grundlegende Datenoperationen durchzuf\u00fchren - also beispielsweise das Anlegen neuer Datens\u00e4tze, das Bearbeiten oder L\u00f6schen vorhandener Datens\u00e4tze, das Durchlaufen von Datensatzgruppen oder das Auffinden bestimmter Datens\u00e4tze. Prinzipiell bilden Sie damit die Basisoperationen der DAO-Bibliothek auf Makro-Ebene ab. Dieser Artikel stellt die Datenoperationen im Detail vor.","twitter:image":"https:\/\/access-basics.de\/wp-content\/uploads\/2021\/02\/logo400.png"},"aioseo_meta_data":{"post_id":"55000240","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-27 03:08:55","updated":"2026-10-19 16:24:04","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/index.php\/category\/2014\" title=\"2014\">2014<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/access-basics.de\/index.php\/category\/2014\/4\/2014\" title=\"4\/2014\">4\/2014<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tDatenmakros II: Datenoperationen\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/access-basics.de\/"},{"label":"2014","link":"https:\/\/access-basics.de\/index.php\/category\/2014"},{"label":"4\/2014","link":"https:\/\/access-basics.de\/index.php\/category\/2014\/4\/2014"},{"label":"Datenmakros II: Datenoperationen","link":"https:\/\/access-basics.de\/index.php\/Datenmakros_II_Datenoperationen.html"}],"_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000240","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000240"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000240\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000240"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000240"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000240"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}