{"id":55000112,"date":"2012-08-01T00:00:00","date_gmt":"2020-01-24T15:58:10","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=112"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Ereignisse_in_Formularen_Teil_1_Reihenfolge","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html","title":{"rendered":"Ereignisse in Formularen, Teil 1: Reihenfolge"},"content":{"rendered":"<p class='introduction'>Wenn Sie Formulare automatisieren m&ouml;chten, um beispielsweise beim &ouml;ffnen, beim Schlie&szlig;en, beim Wechseln oder Speichern eines Datensatzes selbst programmierte Aktionen durchzuf&uuml;hren, sollten Sie die wichtigsten Ereignisse von Formularen und deren Abfolge kennen. Dieser Artikel zeigt, wie Sie die Reihenfolge der Ereignisse beim &ouml;ffnen und Schlie&szlig;en von einfachen Formularen, Formularen mit Unterformularen und gebundenen Formularen ermitteln.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1204_EreignisseInFormularen.mdb<\/b>.<\/p>\n<h2>Ereignisse anlegen<\/h2>\n<p>In einigen Artikeln haben Sie bereits erfahren, wie Sie schnell ein Ereignis f&uuml;r ein Formular oder ein Steuerelement anlegen. Dabei &ouml;ffnen Sie das Formular in der Entwurfsansicht, zeigen die Seite Ereignisse des Eigenschaftsfensters an, w&auml;hlen f&uuml;r die gew&uuml;nschte Ereigniseigenschaft den Wert <b>[Ereignisprozedur] <\/b>aus und klicken dann auf die Schaltfl&auml;che mit den drei Punkten (siehe Bild 1). Access erstellt den Rahmen der Ereignisprozedur dann automatisch und zeigt diesen im VBA-Fenster an.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_112_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_112_001.png\" alt=\"Anlegen von Ereignissen von der Benutzeroberfl&auml;che aus\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Anlegen von Ereignissen von der Benutzeroberfl&auml;che aus<\/p>\n<p>Es gibt jedoch noch eine einfachere Methode. Dazu m&uuml;ssen Sie zumindest das Klassenmodul f&uuml;r das entsprechende Formular angelegt haben, was Sie entweder durch Erstellen einer Ereignisprozedur auf klassischem Wege durchf&uuml;hren &#8211; oder Sie stellen einfach die Eigenschaft <b>Enth&auml;lt Modul <\/b>im Eigenschaftsfenster auf <b>Ja <\/b>ein. Access legt dann ein leeres Klassenmodul f&uuml;r das Formular an.<\/p>\n<p>Wenn Sie nun beispielsweise mit der Tastenkombination <b>Alt + F11 <\/b>zum VBA-Editor wechseln und den Projekt-Explorer mit <b>Strg + R <\/b>aktivieren, finden Sie dort einen entsprechenden Eintrag vor (siehe Bild 2). Das Klassenmodul &ouml;ffnen Sie mit einem Doppelklick auf den Eintrag im Projekt-Explorer.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_112_003.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_112_003.png\" alt=\"Das Klassenmodul im Projekt-Explorer\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Das Klassenmodul im Projekt-Explorer<\/p>\n<p>Wenn Sie nun im Klassenmodul eine Ereignisprozedur f&uuml;r ein Ereignis anlegen m&ouml;chten, das beispielsweise beim &ouml;ffnen des Formulars ausgel&ouml;st wird, w&auml;hlen Sie zun&auml;chst den Eintrag <b>Form <\/b>aus dem linken Kombinationsfeldes des Codefensters aus und dann den Namen des gew&uuml;nschten Ereignisses aus dem rechten Kombinationsfeld (siehe Bild 3). Dies legt nicht nur die Kopf- und die Fu&szlig;zeile der Prozedur an, sondern f&uuml;gt auch den Wert <b>[Ereignisprozedur] <\/b>in die entsprechende Eigenschaft des Formulars ein. Auf diese Weise k&ouml;nnen Sie schnell mehrere Ereignisprozedur erstellen. Im Programmiereralltag kommt dies wahrscheinlich nicht allzu oft vor. Wenn Sie aber wie in diesem Artikel den Umgang mit Ereignisprozeduren kennenlernen wollen, kann es helfen, schnell mal ein paar Prozeduren anzulegen.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_112_002.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_112_002.png\" alt=\"Anlegen von Ereignisprozeduren per VBA-Editor\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 3: Anlegen von Ereignisprozeduren per VBA-Editor<\/p>\n<p>&uuml;brigens funktioniert diese Vorgehensweise zum Anlegen von Prozeduren nicht immer: Wenn Sie etwa ein Formular als modalen Dialog &ouml;ffnen (also mit <b>DoCmd.OpenForm &#8222;Formularname&#8220;, WindowMode:=acDialog<\/b>), k&ouml;nnen Sie wegen des &ouml;ffnungsmodus zun&auml;chst gar keine &auml;nderungen am Code vornehmen. Klicken Sie dann auf die <b>Zur&uuml;cksetzen<\/b>-Schaltfl&auml;che (die mit dem Stop-Symbol), k&ouml;nnen Sie den Code bearbeiten. Das Hinzuf&uuml;gen einer Ereignisprozedur &uuml;ber die beiden Kombinationsfeld oben im Codefenster legt dann allerdings nicht automatisch den Wert <b>[Ereignisprozedur] <\/b>f&uuml;r die entsprechende Ereigniseigenschaft an.<\/p>\n<h2>Ereignisabfolge<\/h2>\n<p>Bevor wir uns die einzelnen Ereignisse ansehen, lernen Sie eine wichtige Technik kennen, um die Abfolge von Ereignissen zu ermitteln und um zu pr&uuml;fen, ob ein Ereignis &uuml;berhaupt in einem bestimmten Zusammenhang ausgel&ouml;st wird. Dazu k&ouml;nnten Sie zun&auml;chst einige Ereignisprozeduren zum Formular hinzuf&uuml;gen, die den Eindruck erwecken, dass sie beim schlichten &ouml;ffnen und Schlie&szlig;en des Formulars ausgel&ouml;st werden.<\/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\/55000112\/\">\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\/55000112?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\/55000112\/\"\/>\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>Wenn Sie Formulare automatisieren m&ouml;chten, um beispielsweise beim &ouml;ffnen, beim Schlie&szlig;en, beim Wechseln oder Speichern eines Datensatzes selbst programmierte Aktionen durchzuf&uuml;hren, sollten Sie die wichtigsten Ereignisse von Formularen und deren Abfolge kennen. Dieser Artikel zeigt, wie Sie die Reihenfolge der Ereignisse beim &ouml;ffnen und Schlie&szlig;en von einfachen Formularen, Formularen mit Unterformularen und gebundenen Formularen ermitteln.<\/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":[662012,66042012,44000004],"tags":[],"class_list":["post-55000112","post","type-post","status-publish","format-standard","hentry","category-662012","category-66042012","category-Formulare_fuer_die_Dateneingabe"],"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>Ereignisse in Formularen, Teil 1: Reihenfolge - Access [basics]<\/title>\n<meta name=\"description\" content=\"Wenn Sie Formulare automatisieren m\u00f6chten, um beispielsweise beim \u00d6ffnen, beim Schlie\u00dfen, beim Wechseln oder Speichern eines Datensatzes selbst programmierte Aktionen durchzuf\u00fchren, sollten Sie die wichtigsten Ereignisse von Formularen und deren Abfolge kennen. Dieser Artikel zeigt, wie Sie die Reihenfolge der Ereignisse beim \u00d6ffnen und Schlie\u00dfen von einfachen Formularen, Formularen mit Unterformularen und gebundenen Formularen ermitteln.\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ereignisse in Formularen, Teil 1: Reihenfolge - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Wenn Sie Formulare automatisieren m\u00f6chten, um beispielsweise beim \u00d6ffnen, beim Schlie\u00dfen, beim Wechseln oder Speichern eines Datensatzes selbst programmierte Aktionen durchzuf\u00fchren, sollten Sie die wichtigsten Ereignisse von Formularen und deren Abfolge kennen. Dieser Artikel zeigt, wie Sie die Reihenfolge der Ereignisse beim \u00d6ffnen und Schlie\u00dfen von einfachen Formularen, Formularen mit Unterformularen und gebundenen Formularen ermitteln.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-24T15:58:10+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_112_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=\"8\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\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"..\/tl_files\/images\/pic_112_001.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html\",\"name\":\"Ereignisse in Formularen, Teil 1: Reihenfolge - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html#primaryimage\"},\"datePublished\":\"2020-01-24T15:58:10+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"description\":\"Wenn Sie Formulare automatisieren m\\u00f6chten, um beispielsweise beim \\u00d6ffnen, beim Schlie\\u00dfen, beim Wechseln oder Speichern eines Datensatzes selbst programmierte Aktionen durchzuf\\u00fchren, sollten Sie die wichtigsten Ereignisse von Formularen und deren Abfolge kennen. Dieser Artikel zeigt, wie Sie die Reihenfolge der Ereignisse beim \\u00d6ffnen und Schlie\\u00dfen von einfachen Formularen, Formularen mit Unterformularen und gebundenen Formularen ermitteln.\",\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.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\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/Ereignisse_in_Formularen_Teil_1_Reihenfolge.html\",\"name\":\"Ereignisse in Formularen, Teil 1: Reihenfolge\"}}]},{\"@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\/55000112","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=55000112"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000112\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000112"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000112"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000112"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}