{"id":55001593,"date":"2026-04-01T00:00:00","date_gmt":"2026-03-05T20:07:38","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=1593"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"SteuerelementWizards_programmieren","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/","title":{"rendered":"Steuerelement-Wizards programmieren"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0\" width=\"1\" height=\"1\" alt=\"\"><b>Access bietet im Formular- und Berichtsentwurf die M&ouml;glichkeit, Steuerelemente mithilfe von Steuerelement-Assistenten zu erstellen. Das ist f&uuml;r Einsteiger eine Erleichterung, f&uuml;hrt aber auch dazu, dass sie schnell Ergebnisse erzielen, deren Zustandekommen sie anschlie&szlig;end nicht mehr nachvollziehen k&ouml;nnen. Sie helfen nicht, die zum Anlegen von Steuerelementen und ihren Funktionen n&ouml;tigen Schritte zu verstehen. Wenn man jedoch genau wei&szlig;, wie man Steuerelemente erstellt und programmiert, gelangt man schnell zu dem Punkt, dass man die gleichen Schritte immer wieder manuell durchf&uuml;hren muss. Und hier kommt ein spannendes Feature von Microsoft Access ins Spiel: Wir k&ouml;nnen auch selbst Steuerelement-Wizards programmieren, mit denen wir Steuerelemente genau nach unseren W&uuml;nschen anlegen k&ouml;nnen. Dabei sparen wir wertvolle Zeit, weil wir diese so gestalten k&ouml;nnen, dass nur noch wenige Eingaben n&ouml;tig sind, um die gew&uuml;nschten Steuerelemente zu erhalten. In diesem Beitrag zeigen wir, welche Steuerelement-Assistenten es schon gibt und wie wir eigene grunds&auml;tzlich hinzuf&uuml;gen k&ouml;nnen.<\/b><\/p>\n<h2>Steuerelement-Wizards in Access nutzen<\/h2>\n<p>Wenn wir mit einer frisch installierten Access-Anwendung arbeiten, werden die Steuerelement-Assistenten, soweit verf&uuml;gbar, automatisch gestartet. Dazu m&uuml;ssen wir lediglich ein entsprechendes Steuerelement anlegen. Die meisten professionellen Entwickler haben dieses Feature jedoch deaktiviert, da sie die Assistenten ohnehin nicht nutzen.<\/p>\n<p>Wenn wir jedoch eigene Steuerelement-Wizards programmieren und nutzen wollen, m&uuml;ssen wir diese Funktion zun&auml;chst wieder aktivieren. Das gelingt, indem wir im Formular- oder Berichtsentwurf (im Folgenden werden wir uns auf den Formularentwurf beschr&auml;nken) im Ribbon die Option <b>Steuerelement-Assistenten verwenden <\/b>aktivieren (siehe Bild 1).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_002.png\" alt=\"Aktivieren der Steuerelement-Wizards\" width=\"649,559\" height=\"323,3974\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Aktivieren der Steuerelement-Wizards<\/span><\/b><\/p>\n<p>Wenn wir dann in der Toolbox auf eines der Steuerelemente klicken, f&uuml;r das ein eingebauter Assistent bereitsteht, wird dieser beim Hinzuf&uuml;gen des Steuerelements angezeigt. So etwa der Assistent, der beim Hinzuf&uuml;gen einer Schaltfl&auml;che aufgerufen wird (siehe Bild 2).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_001.png\" alt=\"Der eingebaute Schaltfl&auml;chen-Wizard von Access\" width=\"649,559\" height=\"305,7812\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Der eingebaute Schaltfl&auml;chen-Wizard von Access<\/span><\/b><\/p>\n<p>Diese ist allerdings f&uuml;r einen professionellen Access-Entwickler nicht hilfreich, da er zum Beispiel keinen VBA-Code zum Ausf&uuml;hren erzeugt, sondern die Funktion in einem Makro hinterlegt.<\/p>\n<p>Interessant sind zum Beispiel die Wizards f&uuml;r Kombinations- und Listenfelder. Starten wir diese durch Anlegen eines dieser Steuerelemente, finden wir einen Assistenten vor, der &auml;hnliche Schritte anbietet wie der Assistent zum Erstellen von Nachschlagefeldern in Tabellen. <\/p>\n<h2>Steuerelement-Wizards in der Registry<\/h2>\n<p>Ob ein Steuerelement-Wizard zur Verf&uuml;gung steht, sehen wir in Access erst, wenn wir eines der Steuerelemente anlegen. Dann erscheint der Wizard, falls vorhanden, andernfalls wird das Steuerelement einfach zum Formularentwurf hinzugef&uuml;gt.<\/p>\n<p>F&uuml;r welche Steuerelemente es eingebaute Wizards gibt, k&ouml;nnen wir in der Registry nachsehen. Diese befinden sich zum Beispiel f&uuml;r ein 32-Bit-Office unter dem folgenden Pfad:<\/p>\n<pre>Computer\\HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Office\\ClickToRun\\REGISTRY\\MACHINE\\Software\\Wow6432Node\\Microsoft\\Office\\16.0\\Access\\Wizards\\Control Wizards\\<\/pre>\n<p>Hier sehen wir die verschiedenen Steuerelementtypen und darunter die daf&uuml;r zur Verf&uuml;gung stehenden Wizards (siehe Bild 3). Es gibt nur f&uuml;r wenige Steuerelemente solche Assistenten und alle haben nur ein eingebautes Exemplar.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_003.png\" alt=\"Steuerelement-Wizards in der Registry\" width=\"700\" height=\"272,3472\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Steuerelement-Wizards in der Registry<\/span><\/b><\/p>\n<p>Dadurch werden die Steuerelement-Assistenten auch direkt angezeigt, wenn wir das betreffende Steuerelement anlegen.<\/p>\n<p>Gibt es mehr als einen Wizard, weil wir beispielsweise selbst einen hinzugef&uuml;gt haben, erscheint der Dialog <b>Generator ausw&auml;hlen <\/b>aus Bild 4, der alle verf&uuml;gbaren Wizards anzeigt.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_004.png\" alt=\"Mehrere Wizards f&uuml;r einen Steuerelementtyp\" width=\"299,5588\" height=\"338,3681\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Mehrere Wizards f&uuml;r einen Steuerelementtyp<\/span><\/b><\/p>\n<h2>Eigenen Steuerelement-Wizard erstellen<\/h2>\n<p>Um einen benutzerdefinierten Steuerelement-Wizard zu erstellen, ben&ouml;tigen wir zun&auml;chst eine eigene Datenbank, die den Wizard enth&auml;lt. Wir k&ouml;nnen &uuml;ber eine solche Datenbank allerdings auch mehrere Wizards gleichzeitig zur Verf&uuml;gung stellen.<\/p>\n<p>Diese Datenbank muss die Dateiendung <b>.accda <\/b>statt <b>.accdb <\/b>aufweisen, was wir durch Umbenennen erreichen.<\/p>\n<p>Au&szlig;erdem muss die Datenbank eine Tabelle namens <b>USysRegInfo <\/b>erhalten, welche die Informationen enth&auml;lt, die beim Installieren des Wizards in die Registry &uuml;bertragen werden sollen.<\/p>\n<p>Diese Tabelle enth&auml;lt Informationen wie die, die wir bereits weiter oben im Screenshot der Registry abgebildet haben.<\/p>\n<p>F&uuml;r einen Steuerelement-Wizard ben&ouml;tigen wir darin die folgenden Informationen:<\/p>\n<ul>\n<li><b>Function<\/b>: Gibt die VBA-Funktion an, die beim Aufrufen des Wizards aufgerufen werden soll. Diese &ouml;ffnet dann etwa ein Formular, &uuml;ber das wir die spezifischen Eigenschaften f&uuml;r das zu erstellende Steuerelement eingeben. Die Funktion muss ein spezielles Format aufweisen.<\/li>\n<li><b>Library<\/b>: Enth&auml;lt den Pfad zu der .accda-Datei mit den Funktionen des Wizards.<\/li>\n<li><b>Description<\/b>: Hier k&ouml;nnen wir eine Beschreibung hinterlegen. Diese muss mit Bedacht gew&auml;hlt werden, denn sie taucht in dem Dialog auf, der erscheint, wenn es mehrere Wizards f&uuml;r ein Steuerelement gibt. Man kann daher hier auch einfach den Namen des Wizards angeben und gegebenenfalls eine kurze Erl&auml;uterung.<\/li>\n<li><b>Can Edit<\/b>: Gibt an, ob der Wizard bestehende Steuerelemente editieren kann (Wert <b>1<\/b>) oder ob er nur zum Anlegen neuer Steuerelemente zur Verf&uuml;gung steht (Wert <b>0<\/b>).<\/li>\n<\/ul>\n<p>Diese Werte hinterlegen wir in der bereits erw&auml;hnten Tabelle <b>USysRegInfo<\/b>. Am einfachsten &uuml;bernehmen Sie diese aus der Beispieldatenbank. Das ist sogar zu empfehlen, da bereits kleinste Fehler dazu f&uuml;hren, dass der Wizard nicht installiert werden kann. Ich habe einmal mehrere Stunden damit verbracht, einen solchen Fehler zu finden &#8211; am Ende lag es daran, dass ich statt <b>Can Edit <\/b>den Wert <b>CanEdit <\/b>(zusammengeschrieben) verwendet habe. Den Entwurf der Tabelle <b>USysRegInfo <\/b>sehen Sie in Bild 5.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_005.png\" alt=\"Die Tabelle USysRegInfo in der Entwurfsansicht\" width=\"549,559\" height=\"398,6437\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 5: Die Tabelle USysRegInfo in der Entwurfsansicht<\/span><\/b><\/p>\n<p><b>Achtung: <\/b>Wenn Sie die Tabelle anlegen oder importieren, ist diese normalerweise nicht zu sehen. Das liegt an dem Pr&auml;fix <b>USys<\/b>. Diese Tabellen werden standardm&auml;&szlig;ig ausgeblendet und erscheinen erst, wenn wir in den Optionen des Navigationsbereichs die Eigenschaft <b>Systemobjekte anzeigen <\/b>aktivieren.<\/p>\n<p>F&uuml;r einen einfachen Button-Wizard tragen wir die Werte aus Bild 6 in diese Tabelle ein. Der erste Eintrag, dessen Felder <b>ValName <\/b>und <b>Value <\/b>leer sind, dient lediglich dazu, den Schl&uuml;ssel wie in <b>Subkey <\/b>angegeben zur Registry hinzuzuf&uuml;gen. Die &uuml;brigen Eintr&auml;ge legen die Name-Wert-Paare unter diesem Schl&uuml;ssel an.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_006.png\" alt=\"Die Tabelle USysRegInfo mit den Daten f&uuml;r einen Button-Wizard\" width=\"700\" height=\"268,0244\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 6: Die Tabelle USysRegInfo mit den Daten f&uuml;r einen Button-Wizard<\/span><\/b><\/p>\n<p>Das Feld <b>Subkey <\/b>nimmt den Pfad auf, unter dem wir den Eintrag in der Registry erstellen wollen. Er lautet in diesem Fall:<\/p>\n<pre>HKEY_CURRENT_ACCESS_PROFILE\\Wizards\\Control Wizards\\CommandButton\\ButtonWizard<\/pre>\n<p>Hier verwenden wir mit <b>HKEY_CURRENT_ACCESS_PROFILE <\/b>einen Platzhalter, der beim Installieren des Add-Ins automatisch durch den entsprechenden Zweig der Registry ersetzt wird. Dann folgt der Schl&uuml;ssel <b>Wizards<\/b>, der alle Assistenten f&uuml;r verschiedene Elemente enth&auml;lt. Der n&auml;chste Schl&uuml;ssel <b>Control Wizards<\/b> gibt an, dass es sich bei dem Assistenten um einen Steuerelement-Assistenten handelt. Anschlie&szlig;end geben wir den Typ des Steuerelements an, f&uuml;r den wir den Assistenten aufrufen wollen, in diesem Fall <b>CommandButton<\/b>. Es gibt unter anderem die folgenden Typen:<\/p>\n<p><b>Label<\/b>, <b>TextBox<\/b>, <b>OptionGroup<\/b>, <b>ToggleButton<\/b>, <b>OptionButton<\/b>, <b>CheckBox<\/b>, <b>ComboBox<\/b>, <b>ListBox<\/b>, <b>CommandButton<\/b>, <b>Image<\/b>, <b>UnboundObjectFrame<\/b>, <b>BoundObjectFrame<\/b>, <b>PageBreak<\/b>, <b>SubformSubreport<\/b>, <b>Line <\/b>und <b>Rectangle<\/b><\/p>\n<p>Diese Bezeichnungen m&uuml;ssen ebenfalls exakt &uuml;bernommen werden. Schlie&szlig;lich folgt der Name des Assistenten.<\/p>\n<p>Der Wert im Feld <b>Subkey <\/b>muss f&uuml;r alle Angaben, die zu diesem Wizard in die Registry eingetragen werden sollen, exakt gleich sein.<\/p>\n<p>Das Feld <b>Type <\/b>enth&auml;lt den Typ des Registry-Eintrags. Er kann die folgenden Werte annehmen:<\/p>\n<ul>\n<li><b>0<\/b>: Zeigt an, dass ein Schl&uuml;ssel angelegt werden soll.<\/li>\n<li><b>1<\/b>: Legt fest, dass ein Eintrag des Typs <b>REG_SZ <\/b>angelegt wird.<\/li>\n<li><b>4<\/b>: Legt fest, dass ein Eintrag des Typs <b>REG_DWORD <\/b>angelegt wird.<\/li>\n<\/ul>\n<p>Unter <b>ValName <\/b>geben wir den Namen des Name-Wert-Paares f&uuml;r den Eintrag an.<\/p>\n<p>Und <b>Value <\/b>enth&auml;lt schlie&szlig;lich den Wert. Hier verwenden wir f&uuml;r <b>Library <\/b>wiederum einen Platzhalter:<\/p>\n<pre>|ACCDIR<\/pre>\n<p>Dieser wird beim Installieren durch den Add-In-Ordner von Windows ersetzt, in den die Wizard-Datenbank beim Installieren kopiert wird. Dahinter m&uuml;ssen ein Backslash und der Name der Wizard-Datenbank folgen.<\/p>\n<h2>Funktion zum Starten des Wizards<\/h2>\n<p>Damit der Wizard gestartet werden kann, geben wir unter <b>Function <\/b>den Namen der VBA-Funktion an, die beim Starten ausgel&ouml;st werden soll.<\/p>\n<p>Diese muss f&uuml;r die Verwendung in einem Steuerelement-Wizard ohne f&uuml;hrendes Gleichheitszeichen und ohne folgendes Klammernpaar angegeben werden. In unserem Fall lautet der Eintrag <b>Autostart_ButtonWizard<\/b>.<\/p>\n<p>Die dazu anzulegende VBA-Funktion muss ein bestimmtes Format aufweisen, da beim Aufrufen eines Steuerelement-Wizards zwei wichtige Informationen &uuml;bergeben werden:<\/p>\n<ul>\n<li>Der Name des Steuerelements. Beim Anlegen eines neuen Steuerelements ist das der von Access vergebene Name, beim Editieren eines vorhandenen Steuerelements der gegebenenfalls bereits vom Benutzer ge&auml;nderte Name.<\/li>\n<li>Der Name des Bezeichnungsfeldes des Steuerelements, soweit vorhanden. Steuerelemente mit dem Typ <b>TextBox<\/b>, <b>ListBox <\/b>oder <b>ComboBox <\/b>werden standardm&auml;&szlig;ig mit einem Bezeichnungsfeld angelegt, dessen Name hier &uuml;bergeben wird.<\/li>\n<\/ul>\n<p>Die Signatur der Funktion muss wie folgt aussehen:<\/p>\n<pre><span style=\"color:blue;\">Public Function <\/span>Autostart_ButtonWizard( _\r\n    <span style=\"color:blue;\">Optional<\/span> strControl<span style=\"color:blue;\"> As String<\/span>, _\r\n    <span style=\"color:blue;\">Optional<\/span> strLabel<span style=\"color:blue;\"> As String<\/span>)<span style=\"color:blue;\"> As Variant<\/span>\r\n<span style=\"color:blue;\">End Function<\/span><\/pre>\n<p>Zu Beispielzwecken f&uuml;llen wir diese wie folgt:<\/p>\n<pre><span style=\"color:blue;\">Public Function <\/span>Autostart_ButtonWizard( _\r\n        <span style=\"color:blue;\">Optional<\/span> strControl<span style=\"color:blue;\"> As String<\/span>, _\r\n        <span style=\"color:blue;\">Optional<\/span> strLabel<span style=\"color:blue;\"> As String<\/span>)<span style=\"color:blue;\"> As Variant<\/span>\r\n    <span style=\"color:blue;\">Dim <\/span>strMessage<span style=\"color:blue;\"> As String<\/span>\r\n    <span style=\"color:blue;\">On Error GoTo<\/span> Fehler\r\n    strMessage = \"Control-Wizard f&uuml;r ''\" & strControl & \"''\"\r\n    <span style=\"color:blue;\">If <\/span><span style=\"color:blue;\">Not<\/span> <span style=\"color:blue;\">Len<\/span>(strLabel) = 0<span style=\"color:blue;\"> Then<\/span>\r\n        strMessage = strMessage & <span style=\"color:blue;\">vbCrLf<\/span> _\r\n            & \"mit Bezeichnungfeld ''\" & strLabel & \"''\"\r\n    <span style=\"color:blue;\">End If<\/span>\r\n    <span style=\"color:blue;\">MsgBox<\/span> strMessage, vbOKOnly + vbInformation, _\r\n        \"Button-Wizard\"\r\nEnde:\r\n    <span style=\"color:blue;\">Exit Function<\/span>\r\nFehler:\r\n    <span style=\"color:blue;\">MsgBox<\/span> Err.Number & \" \" & Err.Description\r\n<span style=\"color:blue;\">End Function<\/span><\/pre>\n<p>Wir wollen also einfach eine Meldung mit dem Namen des Steuerelements und gegebenenfalls dem Namen des Bezeichnungsfeldes ausgeben.<\/p>\n<h2>Eigenschaften der Wizard-Datenbank festlegen<\/h2>\n<p>Damit sind wir fast fertig. Es fehlen allerdings noch einige wichtige Einstellungen. Diese nehmen wir in den Eigenschaften der Access-Datenbank vor, die wir finden, indem wir zum Ribbon-Reiter <b>Datei <\/b>wechseln und dann auf Informationen klicken. Hier finden wir rechts den Link <b>Datenbankeigenschaften anzeigen und bearbeiten<\/b>. Bet&auml;tigen wir den Link, erscheint der Eigenschaften-Dialog zu dieser Datenbank. Hier f&uuml;llen wir folgende Eigenschaften:<\/p>\n<ul>\n<li><b>Titel<\/b>: Erscheint im Add-In-Manager unter Verf&uuml;gbare Add-Ins<\/li>\n<li><b>Firma<\/b>: Erscheint im Add-In-Manager beim Markieren des Add-Ins im unteren Bereich.<\/li>\n<li><b>Kommentare<\/b>: Erscheint im Add-In-Manager beim Markieren des Add-Ins im unteren Bereich.<\/li>\n<\/ul>\n<p>Unsere Einstellungen sehen Sie in Bild 7.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_007.png\" alt=\"Eigenschaften der Wizard-Datenbank\" width=\"499,5589\" height=\"539,7125\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 7: Eigenschaften der Wizard-Datenbank<\/span><\/b><\/p>\n<h2>Wizard installieren<\/h2>\n<p>Zum Installieren des Wizards muss nach unseren Experimenten Access zun&auml;chst im Administrator-Modus gestartet werden. Dann &ouml;ffnen wir eine beliebige Datenbank und rufen &uuml;ber das Ribbon den Add-In-Manager auf (<b>Datenbanktools|Add-Ins|Add-Ins|Add-In-Manager<\/b>).<\/p>\n<p>Der Add-In-Manager sieht wie in Bild 8 aus, wenn noch keine Add-Ins installiert sind. Hier klicken wir auf die Schaltfl&auml;che <b>Neues hinzuf&uuml;gen&#8230; <\/b>und w&auml;hlen die <b>.accda<\/b>-Datei mit unserem Steuerelement-Wizard aus. Anschlie&szlig;end erscheint der neue Eintrag wie in Bild 9. Hier sehen wir nun die Einstellungen, die wir in den Datenbank-Eigenschaften vorgenommen haben.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_008.png\" alt=\"Der jungfr&auml;uliche Add-In-Manager\" width=\"499,5589\" height=\"298,5869\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 8: Der jungfr&auml;uliche Add-In-Manager<\/span><\/b><\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_009.png\" alt=\"Der Add-In-Manager mit dem neu installierten Wizard\" width=\"549,559\" height=\"328,472\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 9: Der Add-In-Manager mit dem neu installierten Wizard<\/span><\/b><\/p>\n<h2>Aufrufen des Steuerelement-Wizards<\/h2>\n<p>Um den Steuerelement-Wizard aufzurufen, legen wir ein Formular in der Entwurfsansicht an. Klicken wir in der Toolbox auf die Schaltfl&auml;che und dann ins Formular, erscheint der Dialog <b>Generator ausw&auml;hlen <\/b>und zeigt neben dem eingebauten Assistenten <b>Befehlsschaltfl&auml;chen-Assistent <\/b>auch unseren neuen Assistenten an (siehe Bild 10).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_010.png\" alt=\"Unser Wizard im Auswahl-Dialog\" width=\"299,5588\" height=\"369,8094\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 10: Unser Wizard im Auswahl-Dialog<\/span><\/b><\/p>\n<p>W&auml;hlen wir diesen aus, erscheint die von uns programmierte Meldung mit dem Namen des neu angelegten Steuerelements (siehe Bild 11).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_012.png\" alt=\"Der Wizard funktioniert.\" width=\"424,5589\" height=\"291,9418\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 11: Der Wizard funktioniert.<\/span><\/b><\/p>\n<h2>Wizards f&uuml;r weitere Steuerelemente erstellen<\/h2>\n<p>Bevor wir den Wizard ausbauen, schauen wir uns an, wie wir in der gleichen <b>.accda<\/b>-Datenbank weitere Wizards hinzuf&uuml;gen k&ouml;nnen. Das ist relativ einfach:<\/p>\n<ul>\n<li>Wir duplizieren alle Eintr&auml;ge, die wir in die Tabelle <b>USysRegInfo <\/b>eingetragen haben.<\/li>\n<li>F&uuml;r die duplizierten Eintr&auml;ge ersetzen wir im Feld Subkey die Bezeichnung des Wizards von <b>ButtonWizard <\/b>durch den gew&uuml;nschten Wert.<\/li>\n<li>Au&szlig;erdem &auml;ndern wir <b>CommandButton <\/b>in den Steuerelementtyp, f&uuml;r den wir den n&auml;chsten Wizard anlegen wollen.<\/li>\n<li>F&uuml;r den Datensatz mit dem Wert <b>Function <\/b>im Feld <b>ValName <\/b>&auml;ndern wir den Wert im Feld <b>Value <\/b>auf den Namen der aufzurufenden Funktion.<\/li>\n<li>Au&szlig;erdem &auml;ndern wir den Wert f&uuml;r <b>Description <\/b>entsprechend ab.<\/li>\n<li>Schlie&szlig;lich m&uuml;ssen wir auch die aufzurufende Funktion noch anlegen. Dazu kopieren wir die bereits vorhandene Funktion und stellen f&uuml;r diese den Namen auf den Wert ein, den wir unter <b>Function <\/b>angegeben haben.<\/li>\n<\/ul>\n<p>In Bild 12 sehen wir die Tabelle mit den Eintr&auml;gen f&uuml;r einen zus&auml;tzlichen Wizard, der dieses Mal f&uuml;r Textfelder aufgerufen werden soll.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_013.png\" alt=\"Die Tabelle USysRegInfo mit einem weiteren Wizard\" width=\"700\" height=\"378,5184\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 12: Die Tabelle USysRegInfo mit einem weiteren Wizard<\/span><\/b><\/p>\n<p>Die neue Funktion f&uuml;r diesen Wizard lautet:<\/p>\n<pre><span style=\"color:blue;\">Public Function <\/span>Autostart_TextboxWizard(_\r\n        <span style=\"color:blue;\">Optional<\/span> strControl<span style=\"color:blue;\"> As String<\/span>, _\r\n        <span style=\"color:blue;\">Optional<\/span> strLabel<span style=\"color:blue;\"> As String<\/span>)<span style=\"color:blue;\"> As Variant<\/span>\r\n    <span style=\"color:blue;\">Dim <\/span>strMessage<span style=\"color:blue;\"> As String<\/span>\r\n    <span style=\"color:blue;\">On Error GoTo<\/span> Fehler\r\n    strMessage = \"TextBox-Wizard f&uuml;r ''\" & strControl & \"''\"\r\n    <span style=\"color:blue;\">If <\/span><span style=\"color:blue;\">Not<\/span> <span style=\"color:blue;\">Len<\/span>(strLabel) = 0<span style=\"color:blue;\"> Then<\/span>\r\n        strMessage = strMessage & <span style=\"color:blue;\">vbCrLf<\/span> _\r\n            & \"mit Bezeichnungfeld ''\" & strLabel & \"''\"\r\n    <span style=\"color:blue;\">End If<\/span>\r\n    <span style=\"color:blue;\">MsgBox<\/span> strMessage, vbOKOnly + vbInformation, _\r\n        \"TextBox-Wizard\"\r\nEnde:\r\n    <span style=\"color:blue;\">Exit Function<\/span>\r\nFehler:\r\n    <span style=\"color:blue;\">MsgBox<\/span> Err.Number & \" \" & Err.Description\r\n<span style=\"color:blue;\">End Function<\/span><\/pre>\n<h2>Neuinstallieren des Wizards<\/h2>\n<p>Um die Daten des neuen Wizards in die Registry zu &uuml;bernehmen, m&uuml;ssen wir Access wieder im Administrator-Modus &ouml;ffnen und erneut den Add-In-Manager aufrufen. Wir markieren den vorhandenen Eintrag <b>Steuerelement-Wizards <\/b>und klicken einmal auf die Schaltfl&auml;che Deinstallieren, die ihren Text nun auf <b>Installieren <\/b>&auml;ndert.<\/p>\n<p>Zum erneuten Installieren bet&auml;tigen wir diese Schaltfl&auml;che nochmals.<\/p>\n<p>Wenn wir nun ein Formular in der Entwurfsansicht &ouml;ffnen und ein Textfeld hinzuf&uuml;gen, erscheint direkt die Meldung, dass unser <b>TextBox<\/b>-Wizard ausgef&uuml;hrt wurde (siehe Bild 13). Dieses Mal erscheint auch der Name des Bezeichnungsfeldes, das zu dem neu erstellten Textfeld geh&ouml;rt.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_014.png\" alt=\"Auch der TextBox-Wizard wird erfolgreich aufgerufen.\" width=\"424,5589\" height=\"312,2625\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 13: Auch der TextBox-Wizard wird erfolgreich aufgerufen.<\/span><\/b><\/p>\n<h2>Wizards f&uuml;r bestehende Steuerelemente aufrufen<\/h2>\n<p>Weiter oben haben wir die Einstellung <b>Can Edit <\/b>bereits beschrieben. Mit dieser legen wir fest, ob ein Wizard auch f&uuml;r bereits vorhandene Steuerelemente genutzt werden kann.<\/p>\n<p>Ist das der Fall, k&ouml;nnen wir den Wizard auch f&uuml;r ein vorhandenes Steuerelement aufrufen. Dazu klicken wir mit der rechten Maustaste auf das Steuerelement und finden den Eintrag <b>Aufbauen&#8230; <\/b>im Kontextmen&uuml; vor (siehe Bild 14). Klicken wir diesen an, wird der Wizard ebenfalls gestartet.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_015.png\" alt=\"Aufrufen des Wizards f&uuml;r ein bestehendes Steuerelement\" width=\"499,5589\" height=\"243,2635\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 14: Aufrufen des Wizards f&uuml;r ein bestehendes Steuerelement<\/span><\/b><\/p>\n<h2>Wichtiger Hinweis<\/h2>\n<p>Wenn wir die Wizard-Datenbank weiterbearbeiten wollen, sollte uns immer bewusst sein, ob im Moment die Wizard-Datenbank selbst ge&ouml;ffnet ist oder ob wir ihr VBA-Projekt &uuml;ber eine andere ge&ouml;ffnete Datenbank im VBA-Editor angezeigt bekommen.<\/p>\n<p>Wenn wir eine andere Datenbank &ouml;ffnen und beispielsweise ein Fehler im VBA-Code des Wizards auftaucht, k&ouml;nnen wir diesen zwar im VBA-Editor beheben.<\/p>\n<p>Das Problem ist: Der VBA-Editor ist dann im Kontext der eigentlich ge&ouml;ffneten Datenbank aktiv.<\/p>\n<p>Wir k&ouml;nnen dann nur &Auml;nderungen am VBA-Projekt der aktuellen Datenbank speichern. Das ist mir bereits einige Male zum Verh&auml;ngnis geworden, als ich direkt dort &Auml;nderungen vorgenommen habe, und dann bei einem erneuten &Ouml;ffnen festgestellt habe, dass diese nicht gespeichert wurden.<\/p>\n<p>Es gibt zwei Vorgehensweisen:<\/p>\n<ul>\n<li>Wir nehmen die &Auml;nderungen direkt im Kontext der eigentlich ge&ouml;ffneten Datenbank vor, &uuml;ber die wir den Wizard gestartet haben. Dann m&uuml;ssen wir diese allerdings kopieren und etwa in einer Textdatei speichern, um die &Auml;nderungen anschlie&szlig;end in das VBA-Projekt der Wizard-Datenbank zu &uuml;bertragen und dann dort zu speichern.<\/li>\n<li>Oder wir &ouml;ffnen direkt die Wizard-Datenbank und nehmen die &Auml;nderungen dort vor.<\/li>\n<\/ul>\n<p>Ein weiterer Fallstrick ist, wenn wir die &Auml;nderungen zwar in der Wizard-Datenbank vornehmen, das aber in der Version erledigen, mit der wir gestartet sind. Diese Datenbank wurde aber vom Add-In-Manager in das Add-In-Verzeichnis kopiert. Daher m&uuml;ssen wir die &Auml;nderungen immer an dieser Datenbank vornehmen.<\/p>\n<p>Die einfachste M&ouml;glichkeit, &Auml;nderungen am Code oder den Formularen eines Wizards vorzunehmen, ist ohnehin in der Add-In-Datenbank selbst. Hier k&ouml;nnen wir die Funktionen auch direkt anhand von Beispielformularen testen.<\/p>\n<h2>Ausbauen der Steuerelement-Wizards<\/h2>\n<p>Nun wollen wir echte Funktionen hinzuf&uuml;gen, mit denen wir die Steuerelemente automatisch nach unseren W&uuml;nschen gestalten k&ouml;nnen.<\/p>\n<p>In der Regel sollen dabei Eigenschaften dieser Steuerelemente angepasst werden.<\/p>\n<p>Ein Beispiel dazu sind Unterformular-Steuerelemente. Diese bringen seit einigen Access-Versionen die nervige Eigenschaft mit sich, dass beim Anlegen das Bezeichnungsfeld immer ein wenig zu nah am Unterformular-Steuerelement platziert wird (siehe Bild 15). Man muss also immer manuell das Bezeichnungsfeld nach oben verschieben.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_016.png\" alt=\"Das falsch platzierte Bezeichnungfeld eines Unterformulars\" width=\"424,5589\" height=\"287,2016\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 15: Das falsch platzierte Bezeichnungfeld eines Unterformulars<\/span><\/b><\/p>\n<p>Das wollen wir nun elegant mit einem Wizard f&uuml;r Unterformulare korrigieren, der keine andere Aufgabe hat, als das Bezeichnungsfeld ein wenig nach oben zu verschieben.<\/p>\n<p>Dazu legen wir als Erstes neue Eintr&auml;ge in der Tabelle <b>USysRegInfo <\/b>an. Hier ist zu beachten, dass wir als Steuerelementtyp nicht Subform, sondern <b>SubformSubreport <\/b>angeben (siehe Bild 16).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_017.png\" alt=\"Neue Eintr&auml;ge in USysRegInfo f&uuml;r einen Unterformular-Wizard\" width=\"700\" height=\"321,7679\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 16: Neue Eintr&auml;ge in USysRegInfo f&uuml;r einen Unterformular-Wizard<\/span><\/b><\/p>\n<p>Die neue VBA-Prozedur namens <b>Autostart_SubformWizard <\/b>legen wir wie in den vorherigen Beispielen an und passen diese entsprechend an.<\/p>\n<p>Diese wollen wir nun weiterbearbeiten. Um &Auml;nderungen an dem Bezeichnungsfeld vorzunehmen, wollen wir dieses &uuml;ber eine Objektvariable namens <b>lbl <\/b>referenzieren.<\/p>\n<p>Wir kennen aus den Parametern <b>strControl <\/b>und <b>strLabel <\/b>bereits die Namen des Bezeichnungsfeldes und des Unterformulars. In der neuen Funktion <b>Autostart_SubformWizard <\/b>aus Listing 1 pr&uuml;fen wir nun, ob <b>strLabel<\/b> eine leere Zeichenkette ist. In dem Fall, dass wir das Bezeichnungsfeld bereits entfernt haben, funktioniert der Wizard nicht.<\/p>\n<pre><span style=\"color:blue;\">Public Function <\/span>Autostart_SubformWizard(<span style=\"color:blue;\">Optional<\/span> strControl<span style=\"color:blue;\"> As String<\/span>, <span style=\"color:blue;\">Optional<\/span> strLabel<span style=\"color:blue;\"> As String<\/span>)<span style=\"color:blue;\"> As Variant<\/span>\r\n    <span style=\"color:blue;\">Dim <\/span>frm<span style=\"color:blue;\"> As <\/span>Form\r\n    <span style=\"color:blue;\">Dim <\/span>lbl<span style=\"color:blue;\"> As <\/span>Label\r\n    <span style=\"color:blue;\">Dim <\/span>sfm<span style=\"color:blue;\"> As <\/span>SubForm\r\n    \r\n    <span style=\"color:blue;\">On Error GoTo<\/span> Fehler\r\n    \r\n    <span style=\"color:blue;\">If <\/span><span style=\"color:blue;\">Len<\/span>(strLabel) = 0<span style=\"color:blue;\"> Then<\/span>\r\n        <span style=\"color:blue;\">MsgBox<\/span> \"Unterformular hat kein Bezeichnungsfeld\", vbOKOnly + vbExclamation, \"Bezeichnungsfeld fehlt\"\r\n        <span style=\"color:blue;\">Exit Function<\/span>\r\n    <span style=\"color:blue;\">End If<\/span>\r\n    \r\n    <span style=\"color:blue;\">Set<\/span> frm = Screen.ActiveForm\r\n    <span style=\"color:blue;\">Set<\/span> sfm = frm.Controls(strControl)\r\n    <span style=\"color:blue;\">Set<\/span> lbl = frm.Controls(strLabel)\r\n    \r\n    lbl.Top = sfm.Top - lbl.Height\r\nEnde:\r\n    <span style=\"color:blue;\">Exit Function<\/span>\r\nFehler:\r\n    <span style=\"color:blue;\">MsgBox<\/span> Err.Number & \" \" & Err.Description\r\n<span style=\"color:blue;\">End Function<\/span><\/pre>\n<p><b><span style=\"color:darkgrey;\">Listing 1: Bezeichnungsfeld f&uuml;r ein Unterformular-Steuerelement anpassen<\/span><\/b><\/p>\n<p>Wir geben dann eine Meldung aus und brechen die Funktion ab.<\/p>\n<p>Anderenfalls referenzieren wir mit <b>Screen.ActiveForm <\/b>das aktuelle Formular. Dann holen wir &uuml;ber die <b>Controls<\/b>-Auflistung des Formulars Verweise auf das Unterformular und das Bezeichnungsfeld und speichern diese in den Variablen <b>lbl <\/b>und <b>sfm<\/b>.<\/p>\n<p>Nun folgt die entscheidende Einstellung: Wir legen f&uuml;r das Bezeichnungsfeld den Abstand vom oberen Rand des Formulars &uuml;ber die Eigenschaft <b>Top <\/b>auf einen Wert fest, der dem oberen Rand des Unterformulars minus der H&ouml;he des Bezeichnungsfeldes entspricht.<\/p>\n<p>Damit erreichen wir unser Ziel (siehe Bild 17). Auf diese Weise k&ouml;nnen wir beliebige Einstellungen an neu erstellten und vorhandenen Steuerelementen vornehmen.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_018.png\" alt=\"Korrekt platziertes Bezeichnungsfeld\" width=\"424,5589\" height=\"285,2505\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 17: Korrekt platziertes Bezeichnungsfeld<\/span><\/b><\/p>\n<h2>Eingebaute Assistenten deaktivieren<\/h2>\n<p>Es st&ouml;rt noch, dass beim Hinzuf&uuml;gen des Unterformular-Steuerelements noch der Dialog zum Ausw&auml;hlen der Assistenten angezeigt wird, weil auch noch der eingebaute Assistent verf&uuml;gbar ist. Wenn wir diesen nicht anderweitig ben&ouml;tigen, k&ouml;nnen wir diesen entfernen. Dazu m&uuml;ssen wir den entsprechenden Eintrag aus der Registry l&ouml;schen (siehe Bild 18).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_02\/pic_1593_019.png\" alt=\"Eintrag f&uuml;r einen bestehende Wizard aus der Registry l&ouml;schen\" width=\"649,559\" height=\"355,6408\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 18: Eintrag f&uuml;r einen bestehende Wizard aus der Registry l&ouml;schen<\/span><\/b><\/p>\n<p>Beim n&auml;chsten Start von Access werden Unterformulare mithilfe des neuen Assistenten direkt mit korrekt platziertem Bezeichnungsfeld angelegt.<\/p>\n<p>Dies &auml;ndert sich nat&uuml;rlich, wenn wir weitere benutzerdefinierte Assistenten f&uuml;r den gleichen Steuerelementtyp hinzuf&uuml;gen &#8211; dann erscheint doch wieder der entsprechende Dialog.<\/p>\n<h2>Verschiedene Ausf&uuml;hrungen von Steuerelement-Wizards<\/h2>\n<p>Mit Steuerelement-Wizards k&ouml;nnen wir grunds&auml;tzlich jegliche Manipulation an einem Steuerelement vornehmen. Dabei gibt es zwei grundlegende Ausf&uuml;hrungen:<\/p>\n<ul>\n<li>Solche Wizards wie der f&uuml;r das Ausrichten des Unterformular-Labels, die ihren Dienst allein per VBA und im Hintergrund erledigen und<\/li>\n<li>solche, die eine eigene Benutzeroberfl&auml;che haben, die wir in Form herk&ouml;mmlicher Access-Formulare realisieren k&ouml;nnen.<\/li>\n<\/ul>\n<h2>Steuerelement-Wizards mit Benutzeroberfl&auml;che<\/h2>\n<p>Wenn wir einem Wizard eine Benutzeroberfl&auml;che hinzuf&uuml;gen wollen, k&ouml;nnen wir entweder ein einzelnes Formular anzeigen, das alle f&uuml;r das Anpassen der Steuerelemente n&ouml;tigen Informationen vom Entwickler abfragt.<\/p>\n<p>Oder wir bauen einen echten Assistenten, mit dem wir mehrere Schritte durchlaufen.<\/p>\n<p>Seine Logik landet ebenfalls in einem einzigen Formular, in dem dann die verschiedenen Schritte eingeblendet werden &#8211; zum Beispiel in einem Register-Steuerelement, bei dem wir die Registerreiter der nicht aktiven Schritte ausblenden. Am unteren Rand des Formulars werden &uuml;blicherweise Schaltfl&auml;chen zum Wechseln zwischen den Schritten und zum Abschlie&szlig;en des Assistenten oder zum Abbrechen angezeigt.<\/p>\n<p>Ein solches Formular &ouml;ffnen wir in der Funktion, die beim Starten des Wizards aufgerufen wird. Ein Beispiel daf&uuml;r schauen wir uns im Beitrag <b>Button-Wizard programmieren <\/b>(<b>www.access-im-unternehmen.de\/1594<\/b>) an.<\/p>\n<h2>Downloads zu diesem Beitrag<\/h2>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>SteuerelementWizards.accda<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/170882F0-973C-4BD5-A04B-F3F51CACBF08\/aiu_1593.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Access bietet im Formular- und Berichtsentwurf die M&ouml;glichkeit, Steuerelemente mithilfe von Steuerelement-Assistenten zu erstellen. Das ist f&uuml;r Einsteiger eine Erleichterung, f&uuml;hrt aber auch dazu, dass sie schnell Ergebnisse erzielen, deren Zustandekommen sie anschlie&szlig;end nicht mehr nachvollziehen k&ouml;nnen. Sie helfen nicht, die zum Anlegen von Steuerelementen und ihren Funktionen n&ouml;tigen Schritte zu verstehen. Wenn man jedoch genau wei&szlig;, wie man Steuerelemente erstellt und programmiert, gelangt man schnell zu dem Punkt, dass man die gleichen Schritte immer wieder manuell durchf&uuml;hren muss. Und hier kommt ein spannendes Feature von Microsoft Access ins Spiel: Wir k&ouml;nnen auch selbst Steuerelement-Wizards programmieren, mit denen wir Steuerelemente genau nach unseren W&uuml;nschen anlegen k&ouml;nnen. Dabei sparen wir wertvolle Zeit, weil wir diese so gestalten k&ouml;nnen, dass nur noch wenige Eingaben n&ouml;tig sind, um die gew&uuml;nschten Steuerelemente zu erhalten. In diesem Beitrag zeigen wir, welche Steuerelement-Assistenten es schon gibt und wie wir eigene grunds&auml;tzlich hinzuf&uuml;gen k&ouml;nnen.<\/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":[66022026,662026,44000028],"tags":[],"class_list":["post-55001593","post","type-post","status-publish","format-standard","hentry","category-66022026","category-662026","category-Ergonomie_und_Benutzeroberflaeche"],"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>Steuerelement-Wizards programmieren - 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\/SteuerelementWizards_programmieren\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Steuerelement-Wizards programmieren\" \/>\n<meta property=\"og:description\" content=\"Access bietet im Formular- und Berichtsentwurf die M&ouml;glichkeit, Steuerelemente mithilfe von Steuerelement-Assistenten zu erstellen. Das ist f&uuml;r Einsteiger eine Erleichterung, f&uuml;hrt aber auch dazu, dass sie schnell Ergebnisse erzielen, deren Zustandekommen sie anschlie&szlig;end nicht mehr nachvollziehen k&ouml;nnen. Sie helfen nicht, die zum Anlegen von Steuerelementen und ihren Funktionen n&ouml;tigen Schritte zu verstehen. Wenn man jedoch genau wei&szlig;, wie man Steuerelemente erstellt und programmiert, gelangt man schnell zu dem Punkt, dass man die gleichen Schritte immer wieder manuell durchf&uuml;hren muss. Und hier kommt ein spannendes Feature von Microsoft Access ins Spiel: Wir k&ouml;nnen auch selbst Steuerelement-Wizards programmieren, mit denen wir Steuerelemente genau nach unseren W&uuml;nschen anlegen k&ouml;nnen. Dabei sparen wir wertvolle Zeit, weil wir diese so gestalten k&ouml;nnen, dass nur noch wenige Eingaben n&ouml;tig sind, um die gew&uuml;nschten Steuerelemente zu erhalten. In diesem Beitrag zeigen wir, welche Steuerelement-Assistenten es schon gibt und wie wir eigene grunds&auml;tzlich hinzuf&uuml;gen k&ouml;nnen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-05T20:07:38+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0\" \/>\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=\"17\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Steuerelement-Wizards programmieren\",\"datePublished\":\"2026-03-05T20:07:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/\"},\"wordCount\":3213,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/2fbb537a5a4740d783dfec3016251ac0\",\"articleSection\":[\"2\\\/2026\",\"2026\",\"Ergonomie und Benutzeroberfl\u00e4che\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/\",\"name\":\"Steuerelement-Wizards programmieren - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/2fbb537a5a4740d783dfec3016251ac0\",\"datePublished\":\"2026-03-05T20:07:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/2fbb537a5a4740d783dfec3016251ac0\",\"contentUrl\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/2fbb537a5a4740d783dfec3016251ac0\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/SteuerelementWizards_programmieren\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Steuerelement-Wizards programmieren\"}]},{\"@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":"Steuerelement-Wizards programmieren - 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\/SteuerelementWizards_programmieren\/","og_locale":"de_DE","og_type":"article","og_title":"Steuerelement-Wizards programmieren","og_description":"Access bietet im Formular- und Berichtsentwurf die M&ouml;glichkeit, Steuerelemente mithilfe von Steuerelement-Assistenten zu erstellen. Das ist f&uuml;r Einsteiger eine Erleichterung, f&uuml;hrt aber auch dazu, dass sie schnell Ergebnisse erzielen, deren Zustandekommen sie anschlie&szlig;end nicht mehr nachvollziehen k&ouml;nnen. Sie helfen nicht, die zum Anlegen von Steuerelementen und ihren Funktionen n&ouml;tigen Schritte zu verstehen. Wenn man jedoch genau wei&szlig;, wie man Steuerelemente erstellt und programmiert, gelangt man schnell zu dem Punkt, dass man die gleichen Schritte immer wieder manuell durchf&uuml;hren muss. Und hier kommt ein spannendes Feature von Microsoft Access ins Spiel: Wir k&ouml;nnen auch selbst Steuerelement-Wizards programmieren, mit denen wir Steuerelemente genau nach unseren W&uuml;nschen anlegen k&ouml;nnen. Dabei sparen wir wertvolle Zeit, weil wir diese so gestalten k&ouml;nnen, dass nur noch wenige Eingaben n&ouml;tig sind, um die gew&uuml;nschten Steuerelemente zu erhalten. In diesem Beitrag zeigen wir, welche Steuerelement-Assistenten es schon gibt und wie wir eigene grunds&auml;tzlich hinzuf&uuml;gen k&ouml;nnen.","og_url":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/","og_site_name":"Access im Unternehmen","article_published_time":"2026-03-05T20:07:38+00:00","og_image":[{"url":"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"17\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Steuerelement-Wizards programmieren","datePublished":"2026-03-05T20:07:38+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/"},"wordCount":3213,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#primaryimage"},"thumbnailUrl":"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0","articleSection":["2\/2026","2026","Ergonomie und Benutzeroberfl\u00e4che"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/","url":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/","name":"Steuerelement-Wizards programmieren - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#primaryimage"},"thumbnailUrl":"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0","datePublished":"2026-03-05T20:07:38+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#primaryimage","url":"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0","contentUrl":"http:\/\/vg01.met.vgwort.de\/na\/2fbb537a5a4740d783dfec3016251ac0"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/SteuerelementWizards_programmieren\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Steuerelement-Wizards programmieren"}]},{"@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\/55001593","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=55001593"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55001593\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55001593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55001593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55001593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}