{"id":55000112,"date":"2003-06-01T00:00:00","date_gmt":"2020-05-06T15:17:27","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":"Tipps_und_Tricks_zu_Formularen","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/","title":{"rendered":"Tipps und Tricks zu Formularen"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p>Access stellt Ihnen unterschiedliche Werkzeuge zur Verf&uuml;gung, um die Eingaben des Anwenders zu kontrollieren und ggf. zu korrigieren. Die Kontrollm&ouml;glichkeiten sollten Sie intensiv einsetzen, wenn Sie einen sauberen Datenbestand in Ihrer Datenbank sicherstellen m&ouml;chten.<\/p>\n<p>Die einfachste M&ouml;glichkeit, die Eingaben zu  &uuml;berwachen, sind G&uuml;ltigkeitsregeln f&uuml;r einzelne Datenfelder. Allerdings werden die Regeln bei jedem Feld separat hinterlegt und k&ouml;nnen nicht zentral an einer Stelle &uuml;berpr&uuml;ft werden. Sie k&ouml;nnen ferner keine komplexen Regeln definieren, die sich zum Beispiel an den Eingaben des Benutzers orientieren.<\/p>\n<p>Einfacher geht das Ganze mit Ereignisprozeduren auf Formularebene, in denen Sie die Regeln und Aktionen festlegen. Weitere Einsatzm&ouml;glichkeiten f&uuml;r die Ereignisprozeduren sind G&uuml;ltigkeits&uuml;berpr&uuml;fungen, <\/p>\n<h3>Ereigniskette<\/h3>\n<p>F&uuml;r den Einsatz der Ereignisse m&uuml;ssen Sie aber wissen, welche Sie wann am besten verwenden. Wichtig ist hierbei die Reihenfolge, in der Access die Ereignisse ausl&ouml;st. F&uuml;r die Erfassung und Speicherung eines Datensatzes gilt die folgende Ereigniskette:<\/p>\n<p>Das Ereignis Vor Eingabe wird von Access ausgel&ouml;st, wenn Sie das erste Zeichen in einem neuen Datensatz eingeben. Der Datensatz ist dann noch nicht gespeichert.<\/p>\n<p>Das Ereignis Vor Aktualisierung tritt ein, wenn Sie einen Datensatz verlassen oder speichern, aber bevor der Datensatz tats&auml;chlich in der Datenbank aktualisiert wird. &auml;nderungen k&ouml;nnen jetzt noch r&uuml;ckg&auml;ngig gemacht werden. Doch das Ereignis wird nur ausgel&ouml;st, wenn Sie mindestens in einem Datenfeld eine &auml;nderung durchgef&uuml;hrt haben.<\/p>\n<p><IMG height=\"224\" src=\"..\/fileadmin\/_temp_\/{4C3F35FF-30C3-4C12-91C6-522867409374}\/pic001.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 1:  Eingabepr&uuml;fung auf Formularebene<\/span><\/b><\/p>\n<pre>Private Sub Form_BeforeUpdate(Cancel As Integer)\r\n    If Me!Anzahl &gt; 10 Then\r\n        MsgBox \"Die Anzahl ist zu gro&szlig;\"\r\n        Cancel = True\r\n    End If\r\nEnd Sub<\/pre>\n<p><b>Quellcode 1<\/b><\/p>\n<pre>Private Sub Form_BeforeUpdate(Cancel As Integer)\r\n    Dim DoCancel As Boolean\r\n    DoCancel = False\r\n    If Me!AbschlussID.Column(2) = True Then\r\n        If IsNull(ZertifikatErhaltenAm) Then\r\n            MsgBox \"Bitte geben Sie ein Datum ein.\", vbExclamation, \"Datum eingeben...\"\r\n            DoCancel = True\r\n        End If\r\n        If Nz(Me!Note, 0) = 0 Or Me!Note &gt; Me!MindestNote Then\r\n            MsgBox \"Bitte geben Sie eine Note ein die\" _                & \" kleiner\/gleich der Mindestnote \" _                & \" ist.\", \"Note eingeben...\"\r\n            DoCancel = True\r\n            Me!Note.SetFocus\r\n        End If\r\n    End If\r\n   ... \r\n   ''weitere Pr&uuml;fungen\r\n   ...\r\n    Cancel = DoCancel\r\nEnd Sub<\/pre>\n<p><b>Quellcode 2<\/b><\/p>\n<p>Das Ereignis Nach Aktualisierung wird von Access ausgel&ouml;st, nachdem die ge&auml;nderten Daten im Datensatz aktualisiert wurden, w&auml;hrend das Ereignis Nach Eingabe nur nach Anlage eines neuen Datensatzes von Access ausgel&ouml;st wird.<\/p>\n<h3>Ereignisse abbrechen<\/h3>\n<p>Die Ereignisse Vor Eingabe und Vor Aktualisierung k&ouml;nnen Sie per Programmcode abbrechen und damit verhindern, dass die ausgef&uuml;hrten &auml;nderungen akzeptiert werden.<\/p>\n<p>Hierzu verwenden Sie den Parameter Cancel der Ereignisprozeduren. Setzen Sie den Parameter auf True, wenn Sie den Einf&uuml;ge- bzw. Aktualisierungsvorgang abbrechen m&ouml;chten. Ein Beispiel finden Sie in Quellcode 1. Zun&auml;chst wird der Inhalt des Feldes Anzahl gepr&uuml;ft. Erf&uuml;llt der Wert nicht die definierte Bedingung, gibt die Prozedur eine Meldung aus und bricht den Vorgang ab. Der Benutzer muss also eine Zahl kleiner als oder gleich 10 eingeben, sonst kann der Datensatz nicht gespeichert werden.<\/p>\n<h3>Praxisbeispiel<\/h3>\n<p>Ein praktisches Beispiel f&uuml;r die Anwendung der beschriebenen Ereignisse erhalten Sie in der Musterl&ouml;sung Schulungsverwaltung dieser Ausgabe.<\/p>\n<p>Dort tr&auml;gt der Anwender im Formular frmAbschluesseEingeben die Abschlussnote und das Datum des Abschlusses f&uuml;r die Teilnehmer einer Schulung ein (siehe Bild 1).<\/p>\n<pre>Private Sub Form_AfterUpdate()\r\n    If Nz(Me!AbschlussID, 0) &gt; 1 Then\r\n        If MsgBox(\"M&ouml;chten Sie das Zertifikat jetzt drucken\", _\r\n            vbQuestion + vbYesNo, \"Zertifikat drucken\") = vbYes Then\r\n            Zertifikatdrucken Me!KursteilnehmerID\r\n        End If\r\n    End If\r\nEnd Sub<\/pre>\n<p><b>Quellcode 3<\/b><\/p>\n<p>Das Ereignis Vor Aktualisierung (s. Quellcode 2) wird hier verwendet, um zu pr&uuml;fen, ob der Benutzer das Datum eingegeben hat und ob die Note &#8211; falls erforderlich &#8211; kleiner oder gleich der Mindestnote ist.<\/p>\n<p>Fehlt das Datum oder wird die Mindestnote nicht erreicht, gibt die Prozedur eine entsprechende Fehlermeldung aus und bricht den Speichervorgang ab.<\/p>\n<p>Sind vom Anwender alle Eingaben den Regeln entsprechend ausgef&uuml;hrt worden, wird das Ereignis Nach Aktualisierung ausgel&ouml;st. Hier k&ouml;nnen nun weitere Aktionen folgen, die sich auf die Feldwerte des aktualisierten Datensatzes beziehen.<\/p>\n<p>Im Beispiel wird in diesem Ereignis gepr&uuml;ft, ob der Kurs als bestanden eingegeben wurde (AbschlussID &gt; 1) und der Anwender das passende Zertifikat direkt drucken m&ouml;chte (s. Quellcode 3). <\/p>\n<p>Mit diesem Ereignis l&auml;sst sich der Prozess Zertifikat drucken automatisieren, ohne dass der Anwender noch auf eine weitere Schaltfl&auml;che klicken muss.<\/p>\n<p>In gro&szlig;en Anwendungen mit vielen Formularen ist es fast unumg&auml;nglich, dass einige Unterformulare in mehreren unterschiedlichen Hauptformularen verwendet werden.<\/p>\n<p>Das ist auch dann der Fall, wenn es sich um ein Unterformular handelt, das die Zwischentabelle einer n:m-Beziehung in Listenform darstellt. Solche Unterformulare werden meist in zwei Hauptformularen &#8211; aber mit unterschiedlichen Anzeigefeldern &#8211; ben&ouml;tigt.<\/p>\n<p>In diesem Tipp erfahren Sie, wie Sie es vermeiden, zweimal dasselbe Formular mit ggf. nur geringen Abweichungen anzulegen und statt dessen nur ein Formular zu verwenden.<\/p>\n<h3>Beispielformular<\/h3>\n<p><!--30percent--><\/p>\n<p>Als Beispiel wird wieder die Musterl&ouml;sung Schulungsverwaltung herangezogen. Das Formular frmTeilnahmenachweiseSubform zeigt in Datenblattansicht die Kursteilnehmer und die Anwesenheit der Teilnehmer an.<\/p>\n<p>Das Unterformular wird in zwei Hauptformularen verwendet. Zum einen kommt es in den Stammdaten der Kurse vor. Dort dient es nur der Information und ist schreibgesch&uuml;tzt.<\/p>\n<p>Zum anderen erscheint das Unterformular bei der Erfassung der Anwesenheit, wo das Formular auf keinen Fall schreibgesch&uuml;tzt sein darf.<\/p>\n<p>Der einfachste, aber nicht eleganteste Weg w&auml;re nun, wie oben beschrieben, einfach zwei Versionen des Formulars anzulegen und die entsprechenden Eigenschaften direkt in die jeweiligen Formulare zu setzen.<\/p>\n<p>Die Formulare k&ouml;nnten frmTeilnahmenachweiseSubformAnzeige und frmTeilnahmenachweiseSubformEingabe hei&szlig;en. <\/p>\n<p>Wenn Sie das Formular allerdings noch in einem weiteren Hauptformular ben&ouml;tigen, m&uuml;ssten Sie eine dritte Version des Formulars speichern.<\/p>\n<h3>Eines f&uuml;r alle<\/h3>\n<pre>Private Sub Form_Open(Cancel As Integer)\r\n    If Me.Parent.Form.Name = \"frmTeilnahmenachweise\" _        Then\r\n        Me!WarAnwesend.Enabled = False\r\n        Me!WarAnwesend.Locked = True\r\n        Me.AllowEdits = False\r\n    ElseIf Me.Parent.Form.Name = _        \"frmTeilnahmenachweisEingeben\" Then\r\n        Me!WarAnwesend.Enabled = True\r\n        Me!WarAnwesend.Locked = False\r\n        Me.AllowEdits = True\r\n    End If\r\nEnd Sub<\/pre>\n<p><b>Quellcode 4<\/b><\/p>\n<p><IMG height=\"387\" src=\"..\/fileadmin\/_temp_\/{4C3F35FF-30C3-4C12-91C6-522867409374}\/pic002.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 2:  Ein Formular, zwei Ansichten<\/span><\/b><\/p>\n<p>Statt dessen manipulieren Sie das Unterformular je nachdem, von welchem Hauptformular aus es aufgerufen wird. Um den Namen des Hauptformulars herauszufinden, verwenden Sie die Parent-Eigenschaft des Formulars:<\/p>\n<p>Den Namen m&uuml;ssen Sie jetzt nur noch beim &ouml;ffnen des Unterformulars abpr&uuml;fen und entsprechend reagieren (s. Quellcode 4).<\/p>\n<p>Im Beispiel wird je nach Hauptformular die Bearbeitung &uuml;ber die Eigenschaft AllowEdits gesperrt oder zugelassen. Au&szlig;erdem wird das Feld WarAnwesend aktiviert bzw. deaktiviert.<\/p>\n<p>Wenn Sie das Unterformular in weiteren Formularen verwenden m&ouml;chten, k&ouml;nnen Sie einfach in der Prozedur den Namen des Formulars erg&auml;nzen und die Eigenschaften entsprechend setzen oder andere Aktionen ausf&uuml;hren.<\/p>\n<p>Formulare in der Einzelansicht sind besonders zur Datenerfassung geeignet. Um eine &uuml;bersicht &uuml;ber die Daten zu erhalten oder schnell einen Datensatz zu finden, eignen sich Listen am besten.<\/p>\n<p>In der Regel reicht der Platz auf einem Formular nicht aus, um beide Ansichten sinnvoll nebeneinander darzustellen. Besonders die Listen geraten in solchen Formularen fast immer zu flach oder zu schmal. Im ersten Fall sieht der Anwender nur wenige Datens&auml;tze, im zweiten Fall meist nur die erste Spalte, wodurch gleicherma&szlig;en der Vorteil einer Auswahlliste ad absurdum gef&uuml;hrt wird.<\/p>\n<p>Ideal w&auml;re es, die gesamte Formularbreite- und h&ouml;he sowohl f&uuml;r die Auswahlliste als auch f&uuml;r die Einzelansicht zu nutzen. Das erreichen Sie, indem Sie die beiden Elemente wechselweise einblenden. In Abbildung 2 sehen Sie ein Formular, das die zwei Ansichten nutzt. <\/p>\n<h3>Hinweis<\/h3>\n<p>Das Formular finden Sie in der Musterl&ouml;sung Schulungsverwaltung dieser Ausgabe. Es handelt sich um das Formular frmKursgruppen. Im Formular werden zu einer Kursgruppe die zugeordneten Kurse angezeigt. Die Erfassung der Kurse erfolgt in einem Unterformular, die Auswahl in einem Listenfeld. <\/p>\n<h3>Notwendige Elemente<\/h3>\n<p>Zur Programmierung der Funktionalit&auml;t ben&ouml;tigen Sie die folgenden Objekte im Formular:<\/p>\n<h3>Notwendige Funktionen<\/h3>\n<p>Die Entwicklung des Umschaltvorgangs bedarf einiger Vor&uuml;berlegungen, um keine Funktionen zu vergessen.<\/p>\n<p>Nachfolgend sind die ben&ouml;tigten Funktionen aufgef&uuml;hrt:<\/p>\n<h3>Formular initialisieren<\/h3>\n<p>Beginnen wir mit der Initialisierung des Formulars. Hier legen Sie fest, welche Ansicht beim &ouml;ffnen des Formulars erscheinen soll:<\/p>\n<pre>Private Sub Form_Open(Cancel As Integer)\r\n    Me!tglAnsicht = False\r\n    Me!tglAnsicht.Caption = _        tglCaptionFalse\r\n    Me!lstKurse.Visible = True\r\n    Me!subKurse.Visible = False\r\nEnd Sub<\/pre>\n<p>Die Prozedur legt im ersten Schritt den Wert und die Beschriftung der Umschaltfl&auml;che tblAnsicht fest. Zur Vereinfachung ist der Beschriftungstext in Konstanten auf Formularebene gespeichert.<\/p>\n<p>F&uuml;r den gedr&uuml;ckten Zustand der Umschaltfl&auml;che wird die Konstante<\/p>\n<p>und f&uuml;r den nicht gedr&uuml;ckten Zustand die Konstante<\/p>\n<p>verwendet. Das &auml;ndern der Umschaltfl&auml;chen- Beschriftung kann dadurch an einer Stelle im Formular erfolgen.<\/p>\n<p>Zum Schluss blendet die Prozedur das Listenfeld ein und das Unterformular aus.<\/p>\n<h3>Ansicht wechseln<\/h3>\n<p>Zur Aktualisierung der Ansicht programmieren Sie die Prozedur AnsichtAktualisieren (s. Quellcode 5). Die Prozedur &auml;ndert die Sichtbar-Eigenschaft des Listenfeldes und des Unterformulars in Abh&auml;ngigkeit vom Zustand der Umschaltfl&auml;che. Au&szlig;erdem passt sie entsprechend die Beschriftung an und setzt den Focus auf das sichtbare Objekt.<\/p>\n<p>Zus&auml;tzlich ben&ouml;tigen Sie eine Prozedur, um die Daten im Listenfeld mit der aktuell im Hauptformular angezeigten Kursgruppe zu synchronisieren. Beim Unterformular ist das nicht erforderlich, da es &uuml;ber die Eigenschaften Verkn&uuml;pfen von und Verkn&uuml;pfen nach an das Hauptformular gebunden ist und automatisch synchronisiert wird.<\/p>\n<pre>Sub AnsichtAktualisieren()\r\n    ''Zwischen Einzel- und Listenansicht wecheln\r\n    Me!lstKurse.Visible = Not Me!tglAnsicht\r\n    Me!subKurse.Visible = Me!tglAnsicht\r\n    ''Beschriftung der Umschaltfl&auml;che &auml;ndern\r\n    If Me!tglAnsicht = False Then\r\n        Me!tglAnsicht.Caption = tglCaptionFalse\r\n        Me!lstKurse.SetFocus\r\n    Else\r\n        Me!tglAnsicht.Caption = tglCaptionTrue\r\n        Me!subKurse.SetFocus\r\n    End If\r\nEnd Sub<\/pre>\n<p><b>Quellcode 5<\/b><\/p>\n<pre>Sub ListenfeldAktualisieren()\r\n    ''Aktualisiert das Listenfeld f&uuml;r die Kurse mit der aktuellen Kursgruppe\r\n    Dim SQL As String\r\n    SQL = \"SELECT tblKurse.KursID, tblKurse.Kursname, tblKurse.Kuerzel \r\n        & \" FROM tblKurse WHERE KursgruppeID=\" & Me!KursgruppeID\r\n    lstKurse.RowSource = SQL\r\n    lstKurse.Requery\r\nEnd Sub<\/pre>\n<p><b>Quellcode 6<\/b><\/p>\n<pre>Sub tglAnsicht_Click()\r\n    ''&auml;ndert die Ansicht\r\n    Dim rstKurse As Recordset\r\n    ''Im Formular zum Datensatz navigieren, der im Listenfeld markiert ist\r\n    If Nz(Me!lstKurse, 0) &lt;&gt; 0 Then\r\n        Set rstKurse = Me!subKurse.Form.RecordsetClone\r\n        rstKurse.FindFirst \"KursID=\" & Nz(Me!lstKurse, 0)\r\n        Me!subKurse.Form.Bookmark = rstKurse.Bookmark\r\n    End If\r\n    ListenfeldAktualisieren\r\n    AnsichtAktualisieren\r\nEnd Sub<\/pre>\n<p><b>Quellcode 7<\/b><\/p>\n<p>Die Prozedur ListenfeldAktualisieren (s. Quellcode 6) &uuml;bernimmt die Abgleichaufgabe. Die Prozedur setzt die Datensatzherkunft des Listenfeldes auf Basis der aktuell im Hauptformular angezeigten Kursgruppe zusammen, weist sie dem Listenfeld zu und aktualisiert es  &uuml;ber die Requery-Methode.<\/p>\n<p>Die oben beschriebenen Prozeduren AnsichtAktualisieren und ListenfeldAktualisieren rufen Sie im Ereignis Beim Klicken der Umschaltfl&auml;che tglAnsicht auf (s. Quellcode 7).<\/p>\n<p>Vor dem Aufruf der Prozeduren m&uuml;ssen Sie noch das Listenfeld und das Unterformular synchronisieren. Dazu ermitteln Sie in der Ereignisprozedur den im Listenfeld markierten Eintrag und navigieren anschlie&szlig;end im Unterformular auf den gleichen Datensatz. So gew&auml;hrleisten Sie, dass Sie beim Wechsel in die Formularansicht den zuvor gew&auml;hlten Datensatz auch anzeigen.<\/p>\n<pre>Private Sub btnKursL&ouml;schen_Click()\r\n    ''L&ouml;scht den aktuellen Kurs\r\n    Dim KursID As Long\r\n    Dim db As Database\r\n    Set db = CurrentDb()\r\n    ''Je nach Ansicht wird die aktuelle KursID ermittelt\r\n    If tglAnsicht = True Then\r\n        KursID = Nz(Me!subKurse.Form!KursID, 0)\r\n    Else\r\n        KursID = Nz(Me!lstKurse, 0)\r\n    End If\r\n    ''Falls markiert, werden der Kurs gel&ouml;scht, Formular und Listenfeld aktualisiert\r\n    ''und der erste Eintrag im Listenfeld markiert\r\n    If KursID &lt;&gt; 0 Then\r\n        db.Execute \"DELETE * FROM tblKurse WHERE KursID=\" & KursID\r\n        Me!subKurse.Form.Requery\r\n        Me!lstKurse.Requery\r\n        Me!lstKurse = Me!lstKurse.ItemData(0)\r\n    End If\r\nEnd Sub<\/pre>\n<p><b>Quellcode 8<\/b><\/p>\n<h3>Selektion &uuml;ber das Listenfeld<\/h3>\n<p>Eine &auml;hnliche Funktion wie der Ansichtwechsel mittels Umschaltfl&auml;che soll ein Doppelklick auf einen Eintrag im Listenfeld bewirken.<\/p>\n<p>Die Prozedur ist nahezu gleich aufgebaut und setzt lediglich vor dem Ansichtwechsel den Wert der Umschaltfl&auml;che auf True, um den korrekten Status herzustellen. Au&szlig;erdem entf&auml;llt der Aufruf ListenfeldAktualisieren.<\/p>\n<h3>Neuen Datensatz anlegen<\/h3>\n<p>Der Umschaltvorgang ist jetzt vollst&auml;ndig entwickelt. Es fehlen nur noch die M&ouml;glichkeiten, einen Datensatz neu anzulegen und zu l&ouml;schen.<\/p>\n<p>Die Neuanlage erfolgt &uuml;ber die Schaltfl&auml;che btnNeuerKurs. Die Schaltfl&auml;che l&ouml;st die folgende Ereignisprozedur aus:<\/p>\n<p>Die Prozedur wechselt &uuml;ber die folgende Anweisung in die Formularansicht, setzt den Fokus auf das Unterformular und navigiert zum neuen Datensatz:<\/p>\n<h3>Datensatz l&ouml;schen<\/h3>\n<p>Das L&ouml;schen eines Datensatzes erfolgt &uuml;ber die Schaltfl&auml;che btnKursL&ouml;schen.<\/p>\n<p>Die Ereignisprozedur (s. Quellcode 9) ermittelt zun&auml;chst je nach Ansicht die aktuelle KursID des zu l&ouml;schenden Datensatzes aus dem Listenfeld oder dem Unterformular. Falls eine g&uuml;ltige KursID gefunden wird, f&uuml;hrt die Prozedur die entsprechende DELETE-Anweisung aus. Zum Schluss wird die Datensatzherkunft der Steuerelemente aktualisiert und in der Liste der erste Eintrag markiert.<\/p>\n<p>Access bietet bei Befehlsschaltfl&auml;chen &#8211; anders als bei Symbol- oder Men&uuml;leisten &#8211; leider nicht von sich aus die M&ouml;glichkeit, sie gleichzeitig mit einem Text und einer Grafik zu belegen.<\/p>\n<p>Dabei ist die Kombination aus Text und Symbol nicht nur sch&ouml;ner, sondern f&uuml;r den Anwender auch wesentlich einpr&auml;gsamer und schneller zu erfassen.<\/p>\n<p><IMG height=\"268\" src=\"..\/fileadmin\/_temp_\/{4C3F35FF-30C3-4C12-91C6-522867409374}\/pic003.png\" width=\"387\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 3:  Standardschaltfl&auml;chen von Access<\/span><\/b><\/p>\n<p>F&uuml;r den Inhalt einer Befehlsschaltfl&auml;che verwendet Access die Eigenschaften Beschriftung oder Bild. Abbildung 3 stellt die beiden Varianten &#8211; im vorliegenden Fall zur Anlage eines neuen Kunden &#8211; im Formular dar.<\/p>\n<h3>Bild und Text kombinieren<\/h3>\n<p>Die triviale, aber einzige M&ouml;glichkeit, beide Varianten zu kombinieren, besteht darin, eine entsprechende Grafik f&uuml;r die Schaltfl&auml;che zu entwerfen. Sie k&ouml;nnen ein beliebiges Grafikprogramm (z. B. Microsoft Paintbrush) daf&uuml;r verwenden.<\/p>\n<p>Gehen Sie in den folgenden Schritten vor:<\/p>\n<p><IMG height=\"233\" src=\"..\/fileadmin\/_temp_\/{4C3F35FF-30C3-4C12-91C6-522867409374}\/pic004.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 4:  Grafische Anordnung von Symbol und Text<\/span><\/b><\/p>\n<p><IMG height=\"107\" src=\"..\/fileadmin\/_temp_\/{4C3F35FF-30C3-4C12-91C6-522867409374}\/pic005.png\" width=\"180\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 5:  Die fertige Schaltfl&auml;che<\/span><\/b><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Diese Zusammenstellung von Tipps und Tricks enth&auml;lt folgende Themen:<br \/>\n&#8211; Datens&auml;tze kontrolliert speichern<br \/>\n&#8211; Zwei auf einen Streich<br \/>\n&#8211; Ansicht wechsle dich<br \/>\n&#8211; Die Qual der Wahl<\/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":[662003,66032003,44000023,44000004],"tags":[],"class_list":["post-55000112","post","type-post","status-publish","format-standard","hentry","category-662003","category-66032003","category-Mit_Formularen_arbeiten","category-Tipps_und_Tricks"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Tipps und Tricks zu Formularen - 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\/Tipps_und_Tricks_zu_Formularen\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tipps und Tricks zu Formularen\" \/>\n<meta property=\"og:description\" content=\"Diese Zusammenstellung von Tipps und Tricks enth&auml;lt folgende Themen: - Datens&auml;tze kontrolliert speichern - Zwei auf einen Streich - Ansicht wechsle dich - Die Qual der Wahl\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-06T15:17:27+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4\" \/>\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=\"12\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Tipps und Tricks zu Formularen\",\"datePublished\":\"2020-05-06T15:17:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/\"},\"wordCount\":1908,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/37193a1b5bfa4b19971d786beb130fa4\",\"articleSection\":[\"2003\",\"3\\\/2003\",\"Mit Formularen arbeiten\",\"Tipps und Tricks\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/\",\"name\":\"Tipps und Tricks zu Formularen - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/37193a1b5bfa4b19971d786beb130fa4\",\"datePublished\":\"2020-05-06T15:17:27+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/37193a1b5bfa4b19971d786beb130fa4\",\"contentUrl\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/37193a1b5bfa4b19971d786beb130fa4\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Tipps_und_Tricks_zu_Formularen\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tipps und Tricks zu Formularen\"}]},{\"@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":"Tipps und Tricks zu Formularen - 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\/Tipps_und_Tricks_zu_Formularen\/","og_locale":"de_DE","og_type":"article","og_title":"Tipps und Tricks zu Formularen","og_description":"Diese Zusammenstellung von Tipps und Tricks enth&auml;lt folgende Themen: - Datens&auml;tze kontrolliert speichern - Zwei auf einen Streich - Ansicht wechsle dich - Die Qual der Wahl","og_url":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/","og_site_name":"Access im Unternehmen","article_published_time":"2020-05-06T15:17:27+00:00","og_image":[{"url":"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"12\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Tipps und Tricks zu Formularen","datePublished":"2020-05-06T15:17:27+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/"},"wordCount":1908,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#primaryimage"},"thumbnailUrl":"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4","articleSection":["2003","3\/2003","Mit Formularen arbeiten","Tipps und Tricks"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/","url":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/","name":"Tipps und Tricks zu Formularen - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#primaryimage"},"thumbnailUrl":"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4","datePublished":"2020-05-06T15:17:27+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#primaryimage","url":"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4","contentUrl":"http:\/\/vg08.met.vgwort.de\/na\/37193a1b5bfa4b19971d786beb130fa4"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Tipps_und_Tricks_zu_Formularen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Tipps und Tricks zu Formularen"}]},{"@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\/55000112","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=55000112"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000112\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55000112"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55000112"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55000112"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}