{"id":55000084,"date":"2012-08-01T00:00:00","date_gmt":"2020-01-24T15:57:59","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=84"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Formulare_und_Steuerelemente_referenzieren","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html","title":{"rendered":"Formulare und Steuerelemente referenzieren"},"content":{"rendered":"<p class='introduction'>Je mehr Sie VBA zur Steuerung von Formularen und Steuerelementen einsetzen, desto &ouml;fter greifen Sie dabei per Code auf die Inhalte oder Eigenschaften dieser Elemente zu &#8211; beispielsweise, um den Wert eines Feldes auszulesen oder einen Eintrag eines Kombinationsfeldes auszuw&auml;hlen. Dieser Artikel liefert eine &uuml;bersicht, wie Sie von verschiedenen Stellen aus Formulare und Steuerelemente referenzieren.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1110_FormulareReferenzieren.mdb<\/b>.<\/p>\n<h2>Global referenzieren<\/h2>\n<p>Wir beginnen mit den Verweisen, die Sie von beliebigen Stellen aus nutzen k&ouml;nnen. Damit ist das Testen f&uuml;r den Anfang am einfachsten: Sie k&ouml;nnen die folgenden Anweisungen einfach in das Direktfenster des VBA-Editors eingeben, dass Sie mit <b>Strg + G <\/b>sichtbar machen.<\/p>\n<p>Beginnen wir mit dem nackten Formular. Ein Formular referenzieren Sie mit einem Verweis auf ein Element der <b>Forms<\/b>-Auflistung.<\/p>\n<p>Wenn Sie beispielsweise den Namen eines Formulars ermitteln m&ouml;chten, k&ouml;nnen Sie die folgende Anweisung absetzen:<\/p>\n<pre><span style=\"color:blue;\">Debug.Print<\/span> Forms.Item(\"frmBeispiel\").Name<\/pre>\n<p>K&uuml;rzer und gebr&auml;uchlicher sind jedoch diese Versionen (siehe Bild 1):<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_84_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_84_001.png\" alt=\"Referenzieren eines Formulars\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Referenzieren eines Formulars<\/p>\n<pre><span style=\"color:blue;\">Debug.Print<\/span> Forms(\"frmBeispiel\").Name\r\n<span style=\"color:blue;\">Debug.Print<\/span> Forms!frmBeispiel.Name<\/pre>\n<p>Mit der Ausrufezeichen-Syntax greifen Sie auf alle Elemente von Auflistungen zu, die benutzerdefiniert sind, die Sie also selbst erstellt haben. Das gilt im Folgenden auch f&uuml;r Steuerelemente.<\/p>\n<p>Wenn das Formular gerade das einzige ge&ouml;ffnete Formular ist, k&ouml;nnen Sie auch diese Syntax nutzen:<\/p>\n<pre><span style=\"color:blue;\">Debug.Print<\/span> Forms(0).Name<\/pre>\n<p>Beachten Sie, dass dies immer funktioniert, wenn das betroffene Formular ge&ouml;ffnet ist &#8211; egal, in welcher Ansicht. Sie k&ouml;nnen also auch Eigenschaften von Formularen in der Entwurfsansicht &uuml;ber diese Anweisung ausgeben.<\/p>\n<h2>Beispiel: Filter<\/h2>\n<p>Sie k&ouml;nnen so von au&szlig;en, also vom Direktfenster oder auch von einem anderen Formular aus, Eigenschaften lesen und einstellen. Wenn Sie beispielsweise einen Filter f&uuml;r ein Formular festlegen m&ouml;chten, verwenden Sie diese beiden Anweisungen:<\/p>\n<pre>Forms!frmBeispiel.Filter = \"Artikelname = 'Chang'\"\r\nForms!frmBeispiel.FilterOn = <span style=\"color:blue;\">True<\/span><\/pre>\n<p>Um den Filter zu deaktivieren, stellen Sie die Eigenschaft <b>Filter <\/b>auf den urspr&uuml;nglichen Wert ein, also eine leere Zeichenkette:<\/p>\n<pre>Forms!frmBeispiel.Filter = \"\"<\/pre>\n<p><b>FilterOn <\/b>wird dabei automatisch auf <b>False <\/b>eingestellt, was sich leicht pr&uuml;fen l&auml;sst:<\/p>\n<pre>  Forms!frmBeispiel.FilterOn\r\nFalsch<\/pre>\n<h2>Referenz speichern<\/h2>\n<p>Wenn Sie wie im Beispiel oben mehrfach auf ein referenziertes Objekt zugreifen, k&ouml;nnen Sie die Referenz auch in einer Variablen des entsprechenden Objekttyps speichern und auf die Variable zugreifen, statt immer wieder neu zu referenzieren. F&uuml;r ein Formular deklarieren Sie die Variable wie folgt:<\/p>\n<pre><span style=\"color:blue;\">Dim <\/span>frm<span style=\"color:blue;\"> As <\/span>Form<\/pre>\n<p>Sobald Sie mit Variablen arbeiten, f&uuml;gen Sie die Anweisungen praktischerweise in eine Prozedur ein, die Sie wie in folgendem Beispiel in einem Standardmodul anlegen (<b>mdlFormReferenzen<\/b>):<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>FormReferenz()\r\n     <span style=\"color:blue;\">Dim <\/span>frm<span style=\"color:blue;\"> As <\/span>Form\r\n     <span style=\"color:blue;\">Set<\/span> frm = Forms!frmBeispiel\r\n     frm.Filter = \"Artikelname = 'Chang'\"\r\n     frm.FilterOn = <span style=\"color:blue;\">True<\/span>\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<h2>Sich selbst referenzieren<\/h2>\n<p>Wenn Sie innerhalb des Klassenmoduls eines Formulars auf Formular-Eigenschaften zugreifen m&ouml;chten, k&ouml;nnen Sie dies ebenfalls &uuml;ber die oben vorgestellten Referenzierungen durchf&uuml;hren.<\/p>\n<p>Die Schaltfl&auml;che <b>cmdNameAusgeben <\/b>l&ouml;st bei Mausklick eine Prozedur aus, die den Namen des Formulars <b>frmBeispiel <\/b>ausgibt:<\/p>\n<pre><span style=\"color:blue;\">Private Sub <\/span>cmdNameAusgeben_Click()\r\n     <span style=\"color:blue;\">MsgBox<\/span> Forms!frmBeispiel.Name\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>F&uuml;r den Zugriff auf ein Formular-Objekt innerhalb des Klassenmoduls des Formulars gibt es jedoch eine Vereinfachung.<\/p>\n<p>Statt <b>Forms!<Formularname><\/b> verwenden Sie einfach das Schl&uuml;sselwort <b>Me<\/b>. Die obige Prozedur k&ouml;nnte also auch so aussehen:<\/p>\n<pre><span style=\"color:blue;\">Private Sub <\/span>cmdNameAusgeben_Click()\r\n     <span style=\"color:blue;\">MsgBox<\/span> Me.Name\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\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\/55000084\/\">\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\/55000084?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\/55000084\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"a4912ba1e1\"\/>\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>Je mehr Sie VBA zur Steuerung von Formularen und Steuerelementen einsetzen, desto &ouml;fter greifen Sie dabei per Code auf die Inhalte oder Eigenschaften dieser Elemente zu &#8211; beispielsweise, um den Wert eines Feldes auszulesen oder einen Eintrag eines Kombinationsfeldes auszuw&auml;hlen. Dieser Artikel liefert eine &uuml;bersicht, wie Sie von verschiedenen Stellen aus Formulare und Steuerelemente referenzieren.<\/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":[66102011,662011,44000010],"tags":[],"class_list":["post-55000084","post","type-post","status-publish","format-standard","hentry","category-66102011","category-662011","category-Formulare_mit_VBA_programmieren"],"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>Formulare und Steuerelemente referenzieren - Access [basics]<\/title>\n<meta name=\"description\" content=\"Je mehr Sie VBA zur Steuerung von Formularen und Steuerelementen einsetzen, desto \u00f6fter greifen Sie dabei per Code auf die Inhalte oder Eigenschaften dieser Elemente zu \u2013 beispielsweise, um den Wert eines Feldes auszulesen oder einen Eintrag eines Kombinationsfeldes auszuw\u00e4hlen. Dieser Artikel liefert eine \u00dcbersicht, wie Sie von verschiedenen Stellen aus Formulare und Steuerelemente referenzieren.\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Formulare und Steuerelemente referenzieren - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Je mehr Sie VBA zur Steuerung von Formularen und Steuerelementen einsetzen, desto \u00f6fter greifen Sie dabei per Code auf die Inhalte oder Eigenschaften dieser Elemente zu \u2013 beispielsweise, um den Wert eines Feldes auszulesen oder einen Eintrag eines Kombinationsfeldes auszuw\u00e4hlen. Dieser Artikel liefert eine \u00dcbersicht, wie Sie von verschiedenen Stellen aus Formulare und Steuerelemente referenzieren.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-24T15:57:59+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_84_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\/Formulare_und_Steuerelemente_referenzieren.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"..\/tl_files\/images\/pic_84_001.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html\",\"name\":\"Formulare und Steuerelemente referenzieren - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html#primaryimage\"},\"datePublished\":\"2020-01-24T15:57:59+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"description\":\"Je mehr Sie VBA zur Steuerung von Formularen und Steuerelementen einsetzen, desto \\u00f6fter greifen Sie dabei per Code auf die Inhalte oder Eigenschaften dieser Elemente zu \\u2013 beispielsweise, um den Wert eines Feldes auszulesen oder einen Eintrag eines Kombinationsfeldes auszuw\\u00e4hlen. Dieser Artikel liefert eine \\u00dcbersicht, wie Sie von verschiedenen Stellen aus Formulare und Steuerelemente referenzieren.\",\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.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\/Formulare_und_Steuerelemente_referenzieren.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/Formulare_und_Steuerelemente_referenzieren.html\",\"name\":\"Formulare und Steuerelemente referenzieren\"}}]},{\"@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\/55000084","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=55000084"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000084\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000084"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000084"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000084"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}