{"id":55000174,"date":"2013-10-01T00:00:00","date_gmt":"2020-01-24T15:58:41","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=174"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Aktionsabfragen_per_VBA","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html","title":{"rendered":"Aktionsabfragen per VBA"},"content":{"rendered":"<p class='introduction'>Mit Aktionsabfragen &auml;ndern Sie Daten &#8211; ganz im Gegensatz zu Auswahlabfragen, mit denen Sie Daten selektieren. Die Grundlagen zur Erstellung von Aktionsabfragen mit der Entwurfsansicht f&uuml;r Abfragen haben wir in fr&uuml;heren Artikeln bereits behandelt, aber wir haben uns noch nicht im Detail angesehen, wie Sie solche Abfragen unter VBA ausf&uuml;hren.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1211_AktionsabfragenPerVBA.mdb<\/b>.<\/p>\n<h2>Varianten<\/h2>\n<p>Es gibt mehrere M&ouml;glichkeiten, eine Aktionsabfrage unter VBA auszuf&uuml;hren. Die zwei bekanntesten sind die folgenden: Die erste ist die <b>RunSQL<\/b>-Methode des <b>DoCmd<\/b>-Objekts. Diese erwartet als Parameter den Namen einer gespeicherten Aktionsabfrage oder den entsprechenden SQL-Ausdruck. Optional kann eine Transaktion angegeben werden, in der die Aktionsabfrage ausgef&uuml;hrt wird. Die zweite Variante ist die <b>Execute<\/b>-Methode des <b>Database<\/b>-Objekts der DAO-Bibliothek. Sie bietet ebenfalls einen Parameter an, dem Sie den SQL-Ausdrucks der auszuf&uuml;hrenden Abfrage zuweisen &#8211; jedoch keine gespeicherten Abfragen, die Sie mit der Abfrage-Entwurfsansicht erstellt haben! Der zweite Parameter jedoch dient der &uuml;bergabe von Optionen.<\/p>\n<p>Die <b>Execute<\/b>-Anweisung bietet wesentlich mehr M&ouml;glichkeiten als die <b>RunSQL<\/b>-Methode. Sie k&ouml;nnen beispielsweise Fehler abfragen, die beim Ausf&uuml;hren von Aktionsabfragen mit der <b>Execute<\/b>-Anweisung auftreten, oder Sie fragen die Anzahl der von der Aktionsabfrage betroffenen Datens&auml;tze ab. Schlie&szlig;lich k&ouml;nnen Sie auch noch den Prim&auml;rschl&uuml;sselwert des zuletzt hinzugef&uuml;gten Datensatzes ermitteln, sofern dieser mit einer Aktionsabfrage hinzugef&uuml;gt wurde.<\/p>\n<h2>Einsatz der DoCmd.RunSQL-Methode<\/h2>\n<p>Die <b>DoCmd.RunSQL<\/b>-Methode ist prinzipiell mit dem Men&uuml;befehl zum Ausf&uuml;hren der aktuell im Datenbankfenster beziehungsweise im Navigationsbereich markierten Aktionsabfrage zu vergleichen. Der Unterschied ist, dass Sie bei der VBA-Anweisung noch den Namen der Anweisung angeben m&uuml;ssen. Um eine einfache Abfrage zum &auml;ndern eines Datensatzes auszuf&uuml;hren, legen Sie diese zun&auml;chst wie in Bild 1 an und speichern sie unter dem Namen <b>qryLagerbestandErhoehen<\/b>. Die Abfrage erh&ouml;ht den Bestand des Artikels mit dem Wert <b>1 <\/b>im Feld <b>ArtikelID <\/b>um <b>1<\/b>.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_174_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_174_001.png\" alt=\"Aktionsabfrage zum Erh&ouml;hen des Lagerbestandes eines Artikels um 1\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Aktionsabfrage zum Erh&ouml;hen des Lagerbestandes eines Artikels um 1<\/p>\n<p>Wechseln Sie dann in die SQL-Ansicht der Abfrage (am einfachsten durch einen Rechtsklick auf die Titelleiste der Abfrage und Auswahl des Eintrags <b>SQL-Ansicht <\/b>aus dem Kontextmen&uuml;) und kopieren Sie den dort angezeigten SQL-Ausdruck in die Zwischenablage (siehe Bild 2). Diese f&uuml;gen Sie dann in Anf&uuml;hrungszeichen als ersten Parameter der <b>RunSQL<\/b>-Methode im Direktfenster des VBA-Editors ein (<b>Strg + G<\/b>):<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_174_004.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_174_004.png\" alt=\"SQL-Ansicht der Abfrage qryLagerbestandErhoehen\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: SQL-Ansicht der Abfrage qryLagerbestandErhoehen<\/p>\n<pre>DoCmd.RunSQL \"UPDATE tblArtikel SET Lagerbestand = [Lagerbestand]+1 WHERE ArtikelID=1\"<\/pre>\n<p>Das Ausf&uuml;hren dieser Abfrage durch Bet&auml;tigen der Eingabetaste f&uuml;hrt zum Anzeigen der Meldung aus Bild 3. Wenn Sie auf <b>Ja <\/b>klicken, wird der Datensatz ge&auml;ndert, anderenfalls l&ouml;st dies einen Fehler aus.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_174_005.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_174_005.png\" alt=\"Hinweis auf den anstehenden L&ouml;schvorgang\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 3: Hinweis auf den anstehenden L&ouml;schvorgang<\/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\/55000174\/\">\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\">Password<\/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\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000174?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\/55000174\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"8d63f6cbe9\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\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>Mit Aktionsabfragen &auml;ndern Sie Daten &#8211; ganz im Gegensatz zu Auswahlabfragen, mit denen Sie Daten selektieren. Die Grundlagen zur Erstellung von Aktionsabfragen mit der Entwurfsansicht f&uuml;r Abfragen haben wir in fr&uuml;heren Artikeln bereits behandelt, aber wir haben uns noch nicht im Detail angesehen, wie Sie solche Abfragen unter VBA ausf&uuml;hren.<\/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":[66112012,662012,44000008],"tags":[],"class_list":["post-55000174","post","type-post","status-publish","format-standard","hentry","category-66112012","category-662012","category-Aktionsabfragen"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.9.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Aktionsabfragen per VBA - Access [basics]<\/title>\n<meta name=\"description\" content=\"Mit Aktionsabfragen \u00e4ndern Sie Daten \u2013 ganz im Gegensatz zu Auswahlabfragen, mit denen Sie Daten selektieren. Die Grundlagen zur Erstellung von Aktionsabfragen mit der Entwurfsansicht f\u00fcr Abfragen haben wir in fr\u00fcheren Artikeln bereits behandelt, aber wir haben uns noch nicht im Detail angesehen, wie Sie solche Abfragen unter VBA ausf\u00fchren.\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Aktionsabfragen per VBA - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Mit Aktionsabfragen \u00e4ndern Sie Daten \u2013 ganz im Gegensatz zu Auswahlabfragen, mit denen Sie Daten selektieren. Die Grundlagen zur Erstellung von Aktionsabfragen mit der Entwurfsansicht f\u00fcr Abfragen haben wir in fr\u00fcheren Artikeln bereits behandelt, aber wir haben uns noch nicht im Detail angesehen, wie Sie solche Abfragen unter VBA ausf\u00fchren.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-24T15:58:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"-0001-11-30T00:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/..\/tl_files\/images\/pic_174_001.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\">\n\t<meta name=\"twitter:data1\" content=\"6\u00a0Minuten\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@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\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/access-basics.de\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"..\/tl_files\/images\/pic_174_001.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html\",\"name\":\"Aktionsabfragen per VBA - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html#primaryimage\"},\"datePublished\":\"2020-01-24T15:58:41+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"description\":\"Mit Aktionsabfragen \\u00e4ndern Sie Daten \\u2013 ganz im Gegensatz zu Auswahlabfragen, mit denen Sie Daten selektieren. Die Grundlagen zur Erstellung von Aktionsabfragen mit der Entwurfsansicht f\\u00fcr Abfragen haben wir in fr\\u00fcheren Artikeln bereits behandelt, aber wir haben uns noch nicht im Detail angesehen, wie Sie solche Abfragen unter VBA ausf\\u00fchren.\",\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/Aktionsabfragen_per_VBA.html\",\"name\":\"Aktionsabfragen per VBA\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/#personlogo\",\"inLanguage\":\"de\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000174","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=55000174"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000174\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}