{"id":55000205,"date":"2004-02-01T00:00:00","date_gmt":"2020-05-06T15:17:36","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=205"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Universelle_Suchleiste","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/","title":{"rendered":"Universelle Suchleiste"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>Andr&eacute; Minhorst, Duisburg<\/b><\/p>\n<p><b>Suchfunktionen sind eine der meistprogrammierten Funktionen von Datenbankanwendungen. Es gibt nur wenige Datenbanken, die nicht &uuml;ber mindestens eine mehr oder weniger aufw&auml;ndige Suchfunktion verf&uuml;gen. Auf Grund der sehr verschiedenen Anforderungen m&uuml;ssen Suchfunktionen immer wieder neu programmiert werden. Im vorliegenden Beitrag lernen Sie ein Suchformular kennen, das Sie in beliebige Formulare integrieren und f&uuml;r die Suche in Formularen und Listenfeldern verwenden k&ouml;nnen.<\/b><\/p>\n<p>Eine Suche dient meistens dem Auffinden eines oder mehrerer Datens&auml;tze mit bestimmten Eigenschaften. Das Suchergebnis wird in der Regel in Listenform angezeigt und kann zum Beispiel durch den Ausdruck dieser Liste oder einer detaillierten Anzeige der einzelnen Datens&auml;tze ausgewertet werden.<\/p>\n<p>Die Suche erfolgt nach einem oder mehreren Kriterien, die sich auf die Felder der gew&uuml;nschten Datenherkunft beziehen.<\/p>\n<p>Auf eine ergonomische Auswahl beziehungsweise Eingabe der Suchkriterien wird mal mehr und mal weniger Wert gelegt. Manchmal ist hier auch nicht besonders viel Einsatz erforderlich, zum Beispiel, wenn lediglich in einem Feld der Datenherkunft nach den gew&uuml;nschten Daten gesucht werden soll.<\/p>\n<p>Das ist bei vielen Internetangeboten der Fall, deren Text mit einem einfachen Suchfeld und einer Schaltfl&auml;che zum Absenden der Abfrage durchsucht werden kann.<\/p>\n<p>Auch professionelle Datenbankanwendungen kommen in manchen F&auml;llen mit rudiment&auml;ren Suchfunktionen aus, aber oft sind die Anforderungen dort h&ouml;her. Das bedeutet, dass zum Beispiel viele verschiedene Felder in beliebigen Kombinationen durchsucht werden k&ouml;nnen m&uuml;ssen.<\/p>\n<p>F&uuml;r eine solche Suche ist in der Regel ein relativ hoher Programmieraufwand einzuplanen, wenn sich auch die grundlegenden Techniken oft wiederholen. Auch wenn die Aufgabe meistens nur darin besteht, die Suchbegriffe aus den Suchfeldern auszulesen und eine entsprechende SQL-Abfrage zusammenzustellen, kosten Entwicklung und Tests Zeit und Nerven.<\/p>\n<p>Im vorliegenden Beitrag lernen Sie eine L&ouml;sung kennen, mit der Sie die aufw&auml;ndige Entwicklung immer neuer Suchfunktionen hoffentlich einschr&auml;nken k&ouml;nnen. Die L&ouml;sung nennt sich Suchformular, weil es sich dabei um ein Formular handelt, das Sie als Unterformular in bestehende Formulare integrieren k&ouml;nnen.<\/p>\n<h2>Beispielanwendung<\/h2>\n<p>Die Funktion und die Vorteile des Suchformulars lassen sich am besten anhand einer kleinen Beispielanwendung beschreiben.<\/p>\n<p>Dabei dient die Nordwind-Datenbank als Quelle f&uuml;r die Beispieldaten. Weiter unten finden Sie eine detaillierte Beschreibung zur Erstellung eines Suchformulars. Das Ergebnis wird hier vorneweg zur Beschreibung der Funktionalit&auml;t verwendet.<\/p>\n<p><IMG height=\"190\" src=\"..\/fileadmin\/_temp_\/{3D2D10E1-1221-426A-A967-CB299763D519}\/pic001.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 1:  Beispielsuchformular<\/span><\/b><\/p>\n<p>Das Beispielformular enth&auml;lt die Anzeige von Artikeldatens&auml;tzen in der Detailansicht eines Endlosformulars. Die Suche ist im Kopf des Formulars untergebracht (siehe Bild 1).<\/p>\n<h2>Duale Eingabe<\/h2>\n<p>Wie in  Abb. 1 zu erkennen ist, besteht die Suchmaske sowohl aus einem gro&szlig;en Textfeld zur Eingabe von Suchbegriffen per Tastatur als auch aus vier Kombinationsfeldern, die zur Eingabe per Maus dienen. Beide Varianten werden ausf&uuml;hrlich in den n&auml;chsten beiden Abschnitten beschrieben.<\/p>\n<h3>Bedienung des Suchformulars<\/h3>\n<p>Um eine Suchabfrage mit Hilfe der Kombinationsfelder zu starten, gehen Sie folgenderma&szlig;en vor:<\/p>\n<li>W&auml;hlen Sie nacheinander von rechts nach links die gew&uuml;nschten Parameter aus.<\/li>\n<li>Klicken Sie auf die Schaltfl&auml;che mit dem Plus-Zeichen, um den aktuell ausgew&auml;hlten Ausdruck in das Textfeld Suchkriterien zu &uuml;bernehmen.<\/li>\n<li>Falls n&ouml;tig, geben Sie weitere Suchkriterien ein.<\/li>\n<li>Bet&auml;tigen Sie die Schaltfl&auml;che mit dem Fernglas, um die Suche auszuf&uuml;hren.<\/li>\n<li>Klicken Sie auf die Schaltfl&auml;che mit dem Filter l&ouml;schen-Symbol, um das Textfeld Suchkriterien zu leeren und die Datenherkunft zu initialisieren. (<\/li>\n<h2>Suchkriterien per Maus ausw&auml;hlen<\/h2>\n<p>Die vier Kombinationsfelder erlauben die komfortable Auswahl der Suchkriterien per Maus. Die Felder enthalten folgende Informationen:<\/p>\n<li>Verkn&uuml;pfung: Hier w&auml;hlen Sie die Art der Verkn&uuml;pfung aus, also Und oder Oder.<\/li>\n<li>Kriterium: Das Kombinationsfeld mit der Beschriftung Kriterium stellt alle vordefinierten Kriterien zur Auswahl. Je nach den get&auml;tigten Einstellungen sind das alle Felder, die in dem Formular angezeigt werden.<\/li>\n<li>Operator: Das Kombinationsfeld Operator enth&auml;lt alle f&uuml;r das aktuell im Feld Kriterium ausgew&auml;hlte Feld bereitstehenden Operatoren wie beispielsweise Gleich (=), Enth&auml;lt, Gr&ouml;&szlig;er (&gt;), Kleiner (&lt;) und so weiter. Bei der Einrichtung des Suchformulars k&ouml;nnen Sie festlegen, welche Operatoren f&uuml;r jedes der angebotenen Kriterien zur Auswahl bereitstehen sollen.<\/li>\n<li>Vergleichswert: Je nach der Art des im Feld Kriterium ausgew&auml;hlten Wertes wird das Feld Vergleichswert entweder als Kombinationsfeld oder Textfeld angezeigt. Wenn sich das Kriterium auf bestehende Inhalte bezieht, ist das Feld Vergleichswert ein Kombinationsfeld mit allen f&uuml;r dieses Feld in der Datenherkunft enthaltenen Werten. Wenn das Kriterium ein Volltext ist, der nicht im Kombinationsfeld darstellbar ist, wird ein Textfeld zur Eingabe des gesuchten Begriffes angeboten. Wenn das Kriterium ein Datum ist, wird die Schaltfl&auml;che zum Aktivieren des Kalendersteuerelements aktiviert.<\/li>\n<h2>Suchkriterien per Tastatur eingeben<\/h2>\n<p>&uuml;ber kurz oder lang wird der Benutzer die Eingabe von Suchkriterien per Tastatur wie beispielsweise in Google bevorzugen. Die Syntax ist relativ einfach und direkt aus den vier Kombinationsfeldern ableitbar.<\/p>\n<h3>Verkn&uuml;pfungen<\/h3>\n<p>Es stehen folgende Werte f&uuml;r die Verkn&uuml;pfung zur Verf&uuml;gung:<\/p>\n<li>Plus-Zeichen (+): Die Bedingung wird mit dem Und-Operator verkn&uuml;pft.<\/li>\n<li>Minus-Zeichen (-): Die Bedingung wird mit dem Und-Operator verkn&uuml;pft und negiert.<\/li>\n<li>Kein Zeichen: Die Bedingung wird mit dem Oder-Operator verkn&uuml;pft.<\/li>\n<h3>Kriterien<\/h3>\n<p>Als Kriterium muss der Anwender eines der vorbereiteten Kriterien verwenden. Optimalerweise sind diese so eingestellt, dass alle Felder der angezeigten Datens&auml;tze verwendet werden k&ouml;nnen, wie in dem vorliegenden Beispiel die Felder Artikelname, Lieferant, Kategorie, Liefereinheit, Einzelpreis und so weiter.<\/p>\n<p>Wenn der Anwender ein nicht vorhandenes Kriterium verwendet, erscheint eine entsprechende Meldung.<\/p>\n<h3>Operatoren<\/h3>\n<p>Die Operatoren werden in Kurzschreibweise eingegeben, also beispielsweise =, &gt;, &lt;, &gt;= und so weiter. Der Operator Enth&auml;lt wird automatisch aktiviert, wenn der Vergleichswert ein Sternchen (*) enth&auml;lt.<\/p>\n<h3>Vergleichswerte<\/h3>\n<p>Die Vergleichswerte k&ouml;nnen praktisch genauso wie in Google eingegeben werden &#8211; als einzelne Begriffe mit oder ohne das Sternchen (*), als Platzhalter oder als kompletter Ausdruck mit Leerzeichen, der von Anf&uuml;hrungszeichen eingeschlossen werden muss.<\/p>\n<h2>Beispiele f&uuml;r Suchausdr&uuml;cke<\/h2>\n<p>In Tab. 1 finden Sie einige Beispiele f&uuml;r Suchausdr&uuml;cke mit Erl&auml;uterungen. Die Beispiele k&ouml;nnen nur ganz grob die M&ouml;glichkeiten umrei&szlig;en.<\/p>\n<h3>Hinweis<\/h3>\n<p>Wenn Sie mehrere Ausdr&uuml;cke mit Und, Oder oder Und Nicht verkn&uuml;pfen, beachten Sie, dass die Verkn&uuml;pfungen von links nach rechts abgearbeitet werden. <\/p>\n<p>Das Suchformular l&auml;sst sich einfach in bestehende Formulare integrieren.<\/p>\n<h2>Import der notwendigenDatenbankobjekte<\/h2>\n<p>Um das Suchformular in einer Datenbank verf&uuml;gbar zu machen, m&uuml;ssen Sie lediglich einige Datenbankobjekte in die Datenbank importieren. Dazu geh&ouml;ren das Suchformular selbst, einige Konfigurationstabellen sowie ein Modul mit einigen &ouml;ffentlich zug&auml;nglichen Funktionen.<\/p>\n<h2>Integration des Suchformulars<\/h2>\n<p>Das Suchformular kann in beliebige Formulare integriert werden, deren Daten in Listenform angezeigt und nach bestimmten Kriterien durchsucht werden sollen.<\/p>\n<table border=1>\n<tr>\n<td>\n<p><b>Suchausdruck<\/b><\/p>\n<\/td>\n<td>\n<p><b>Sucht nach Datens&auml;tzen mit folgenden Eigenschaften:<\/b><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Artikel, Artikel*, *Artikel, *Artikel*&#8220;Artikel&#8220;, &#8222;Artikel&#8220;,&#8230;<\/p>\n<\/td>\n<td>\n<p>Standardsuchfeld enth&auml;lt den Ausdruck *Artikel*. Ohne Angabe eines Kriteriums werden Sternchen automatisch hinzugef&uuml;gt.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>-Chai<\/p>\n<\/td>\n<td>\n<p>Standardsuchfeld enth&auml;lt den Ausdruck *Chai* nicht.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Artikelname=ChaiArtikelname=&#8220;Chai&#8220;<\/p>\n<\/td>\n<td>\n<p>Artikelname ist gleich Chai.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Artikelname=Chai*Artikelname=&#8220;Chai*&#8220;<\/p>\n<\/td>\n<td>\n<p>Artikelname beginnt mit Chai.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Artikelname=&#8220;*Chai*&#8220;<\/p>\n<\/td>\n<td>\n<p>Artikelname enth&auml;lt Chai.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>+Getr&auml;nke +Lagerbestand&gt;10<\/p>\n<\/td>\n<td>\n<p>Standardsuchfeld enth&auml;lt Getr&auml;nke und Lagerbestand ist gr&ouml;&szlig;er als 10.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Auslaufartikel=TrueAuslaufartikel=WahrAuslaufartikel=JaAuslaufartikel=Yes<\/p>\n<\/td>\n<td>\n<p>Das Feld Auslaufartikel hat den Wert 0.<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<p><b>Tab. 1: Beispiele f&uuml;r Suchausdr&uuml;cke<\/b><\/p>\n<p>Dabei sieht die L&ouml;sung zwei M&ouml;glichkeiten vor:<\/p>\n<li>Die Daten finden Sie in der Detailansicht eines Endlosformulars.<\/li>\n<li>Die Daten werden in einem Listenfeld angezeigt.<\/li>\n<p>Auch bez&uuml;glich der Datenherkunft beziehungsweise der Datensatzherkunft ist das Suchformular flexibel. Sie k&ouml;nnen sowohl Tabellen als auch Abfragen als Datenherkunft angeben. Einzige Bedingung ist, dass die Datenherkunft in Form einer SELECT-Anweisung angegeben wird und keine m:n-Beziehung in der Abfrage enthalten ist.<\/p>\n<p>F&uuml;r die Integration m&uuml;ssen Sie lediglich das Suchformular als Unterformular in das Zielformular einbauen und eine Anweisung in eine Prozedur des Zielformulars eintragen, die eine Funktion zum Initialisieren des Suchformulars aufruft. Au&szlig;erdem m&uuml;ssen Sie einige Eintr&auml;ge in den Konfigurationstabellen vornehmen.<\/p>\n<p>Nachfolgend finden Sie eine ausf&uuml;hrliche Beschreibung der Schritte, die zur Integration des Suchformulars erforderlich sind.<\/p>\n<p>Au&szlig;erdem erfahren Sie, wie die Datenherkunft beziehungsweise Datensatzherkunft des Formulars oder des Listenfeldes beschaffen sein muss, auf die sich das Suchformular auswirkt.<\/p>\n<h3>Hinweis<\/h3>\n<p>Die Datenbank mit dem Suchformular und den &uuml;brigen ben&ouml;tigten Objekten finden Sie auf der CD unter dem Namen Suchformular97.mdb (f&uuml;r Access 97) und Suchformular00.mdb (f&uuml;r Access 2000 und h&ouml;her). Die Datenbanken enthalten ebenfalls die fertigen, nachfolgend beschriebenen Beispiele f&uuml;r die Suchformulare in den Formularen frmArtikel und frmBestellungen. <\/p>\n<h2>Datenbankobjekte importieren<\/h2>\n<p>Um das Suchformular in Ihre eigene Datenbank einzubauen, gehen Sie folgenderma&szlig;en vor:<\/p>\n<li>&ouml;ffnen Sie die gew&uuml;nschte Datenbank.<\/li>\n<li>F&uuml;hren Sie aus der Men&uuml;leiste den Eintrag Datei ( Externe Daten ( Importieren&#8230; aus.<\/li>\n<li>W&auml;hlen Sie die Datenbank SuchformularXX.mdb aus.<\/li>\n<li>Importieren Sie die Tabellen Feiertage, tblSucheKriterien, tblSucheKriterienOperatoren, tblSucheKriteriumstypen, tblSucheOperatoren, tblSucheParameter und tblSucheVerknuepfungsarten, die Formulare frmKalender und frmSuche und das Modul mdlSuchformular. (<\/li>\n<p><!--30percent--><\/p>\n<p>Die Grundvoraussetzungen sind somit geschaffen. Im n&auml;chsten Schritt bereiten Sie ein Formular vor, dem Sie das Suchformular hinzuf&uuml;gen wollen.<\/p>\n<p><IMG height=\"226\" src=\"..\/fileadmin\/_temp_\/{3D2D10E1-1221-426A-A967-CB299763D519}\/pic002.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 2:  Dieses Formular wird gleich zum Suchformular.<\/span><\/b><\/p>\n<h2>Zielformular vorbereiten<\/h2>\n<p>Im ersten Beispiel f&uuml;gen Sie einem Artikelformular eine Suchfunktion hinzu. Das Artikelformular erstellen Sie schnell mit dem Formularassistenten:<\/p>\n<li>Klicken Sie im Register Formulare des Datenbankfensters auf die Schaltfl&auml;che Neues Formular und w&auml;hlen Sie den Eintrag Formular-Assistent aus.<\/li>\n<li>W&auml;hlen Sie im n&auml;chsten Schritt unter Tabelle\/Abfrage die Tabelle Artikel aus.<\/li>\n<li>Ziehen Sie im n&auml;chsten Dialog alle Felder vom Listenfeld Verf&uuml;gbare Felder in das Feld Ausgew&auml;hlte Felder.<\/li>\n<li>W&auml;hlen Sie als Layout den Typ Tabellarisch aus.<\/li>\n<li>&uuml;bernehmen Sie die Einstellungen der folgenden Dialoge und speichern Sie das Formular unter dem Namen frmArtikel. (<\/li>\n<p>Das Formular sieht nun etwas gedr&auml;ngt aus. Formatieren Sie die Steuerelemente so, dass alle Inhalte sichtbar sind und das Formular etwa so wie in Bild 2 erscheint.<\/p>\n<p>Nun bearbeiten Sie den Bereich, in dem sich die &uuml;berschriften f&uuml;r die einzelnen Felder befinden. Vergr&ouml;&szlig;ern Sie diesen Bereich und verschieben Sie die &uuml;berschriften nach unten.<\/p>\n<p>F&uuml;gen Sie oberhalb der Beschriftungen das Formular frmSuche als Unterformular ein. Am einfachsten geht das, wenn Sie es einfach aus dem Datenbankfenster in den Entwurf des Formulars hineinziehen.<\/p>\n<p>Sie erhalten dabei unter Umst&auml;nden eine Meldung, dass die Eigenschaft Standardansicht eines Formulars mit Unterformular nicht auf Endlosformular eingestellt sein kann, wie es hier der Fall ist.<\/p>\n<p>Au&szlig;erdem wird die Eigenschaft auf den Wert Einzelnes Formular zur&uuml;ckgestellt. Geben Sie nichts um diese Meldung und stellen Sie die Eigenschaft wieder auf den Wert Endlosformular ein.<\/p>\n<p>Damit das Unterformular nicht wie ein Fremdk&ouml;rper wirkt, stellen Sie die Eigenschaft Spezialeffekt des Unterformularsteuerelements auf den Wert Flach und die Eigenschaft Rahmenart auf den Wert Transparent ein. Entfernen Sie au&szlig;erdem das automatisch angelegte Bezeichnungsfeld mit dem Text frmSuche.<\/p>\n<p>Das Formular verlockt nun schon fast zum Eingeben der ersten Suchbegriffe (siehe Bild 3). Doch es sind noch einige Schritte zu erledigen.<\/p>\n<p>Zun&auml;chst legen Sie f&uuml;r die Ereigniseigenschaft Beim &ouml;ffnen des Hauptformulars eine Prozedur mit folgendem Code an:<\/p>\n<pre>Private Sub Form_Open(Cancel As Integer)\r\n    SuchformularInitialisieren Me.Name, 1\r\nEnd Sub<\/pre>\n<p>Zumindest in diesem Falle enth&auml;lt die Prozedur nur eine Anweisung. In anderen F&auml;llen, wenn Sie das Suchformular bestehenden Formularen hinzuf&uuml;gen m&ouml;chten, sind m&ouml;glicherweise schon andere Anweisungen vorhanden. Sie k&ouml;nnen die Anweisung dann an beliebiger Stelle platzieren.<\/p>\n<p>Die Anweisung ruft die Funktion SuchformularInitialisieren auf. Wichtig dabei ist, dass die Funktion dem Suchformular in diesem Formular sagt, in welchem Formular es sich befindet und welche Nummer es hat.<\/p>\n<p><IMG height=\"163\" src=\"..\/fileadmin\/_temp_\/{3D2D10E1-1221-426A-A967-CB299763D519}\/pic003.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 3:  Das Endlosformular mit integriertem Suchformular<\/span><\/b><\/p>\n<p>Damit die Kommunikation zwischen Haupt- und Unterformular funktioniert, m&uuml;ssen Sie auch noch den Namen des Unterformularsteuerelements anpassen.<\/p>\n<p>Erg&auml;nzen Sie den bestehenden Namen um die Nummer des Suchformulars. Im vorliegenden Beispiel muss das Suchformularuntersteuerelement frmSuche1 hei&szlig;en.<\/p>\n<p>Die Nummer ist deshalb wichtig, weil Sie das Suchformular in beliebig viele andere Formulare innerhalb der Datenbankanwendung integrieren k&ouml;nnen.<\/p>\n<p>Sie m&uuml;ssen nur beachten, dass jedes Formular die Funktion SuchformularInitialisieren mit einer anderen Nummer als zweitem Parameter aufruft und das Unterformularsteuerelement den Namen frmSucheX hat, wobei X f&uuml;r die Nummer des Suchformulars steht.<\/p>\n<p>Au&szlig;erdem m&uuml;ssen Sie sich die Nummer merken, da Sie diese sp&auml;ter beim Bearbeiten der Konfigurationstabellen noch ben&ouml;tigen.<\/p>\n<p>Wenn Sie das Formular nun in der Formularansicht &ouml;ffnen, sollte die Funktion ohne Fehlermeldung durchlaufen.<\/p>\n<p>Au&szlig;erdem sollten die Kombinationsfelder bereits einige Eintr&auml;ge anzeigen: Das Kombinationsfeld mit der Beschriftung Verkn&uuml;pfung: enth&auml;lt die drei Eintr&auml;ge &lt;ausw&auml;hlen&gt;, und und oder und die beiden Kombinationsfelder mit den Beschriftungen Kriterium: und Operator: enthalten jeweils nur den Eintrag &lt;ausw&auml;hlen&gt;.<\/p>\n<p>Sp&auml;ter bei der Anpassung der Konfigurationstabellen legen Sie unter anderem fest, welche Eintr&auml;ge diese Kombinationsfelder in Abh&auml;ngigkeit von den anderen Kombinationsfeldern haben und welche Werte standardm&auml;&szlig;ig angezeigt werden.<\/p>\n<h2>Verweise<\/h2>\n<p>Die im Suchformular integrierte Suchfunktion verwendet Regul&auml;re Ausdr&uuml;cke. Damit alle ben&ouml;tigten Objekte, Methoden und Eigenschaften zur Verf&uuml;gung stehen, m&uuml;ssen Sie die entsprechende Bibliothek einbinden.<\/p>\n<li>Bet&auml;tigen Sie die Tastenkombination Strg + g und &ouml;ffnen Sie im nun erscheinenden VBA-Editor den Dialog Verweise &uuml;ber den Men&uuml;eintrag Extras ( Verweise.<\/li>\n<li>Aktivieren Sie den Eintrag Microsoft VBScript Regular Expressions x.y und schlie&szlig;en Sie den Dialog und das VBA-Fenster. Die Version 1.0 reicht f&uuml;r diese Zwecke aus. (<\/li>\n<p>Au&szlig;erdem verwendet das Suchformular DAO. Wenn Sie also Access 2000 oder h&ouml;her verwenden, sollten Sie auch noch einen Verweis auf die aktuellste DAO-Bibliothek setzen.<\/p>\n<p>Nun legen Sie die Konfigurationseinstellungen f&uuml;r das Formular fest. Beginnen Sie mit der Tabelle tblSucheParameter.<\/p>\n<h2>Festlegen der Suchparameter<\/h2>\n<p>Die Tabelle tblSucheParameter enth&auml;lt die grundlegenden Einstellungen f&uuml;r jede einzelne Suche. Dazu geh&ouml;ren die folgenden Felder:<\/p>\n<li>SucheID: legt die Nummer der Suche fest, mit der auch die Parameter aus anderen Konfigurationstabellen zugeordnet werden k&ouml;nnen. Diese Nummer muss mit der weiter oben erw&auml;hnten Nummer &uuml;bereinstimmen.<\/li>\n<li>VerknuepfungsartID: Dieses Feld enth&auml;lt einen Zahlenwert, der festlegt, welcher Eintrag der Tabelle tblSucheVerknuepfungsarten im Kombinationsfeld mit der Beschriftung Verkn&uuml;pfungsart beim Initialisieren des Suchformulars angezeigt werden soll.<\/li>\n<li>KriteriumID: Dieses Feld legt fest, welches der in der Tabelle tblSucheKriterien enthaltenen und zu der Suche mit der in SucheID gespeicherten Nummer geh&ouml;rende Kriterium beim Initialisieren des Suchformulars angezeigt werden soll.<\/li>\n<li>OperatorID: Dieses Feld legt fest, welcher der in der Tabelle tblOperatoren gespeicherten Datens&auml;tze beim Initialisieren des Suchformulars angezeigt werden soll.<\/li>\n<li>Basisabfrage: Die Basisabfrage ist die Abfrage, die beim Zusammensetzen der neuen Datenherkunft f&uuml;r das Suchergebnis als Basis verwendet wird. Weitere Informationen finden Sie weiter unten.<\/li>\n<li>Primaerschluessel: Hier geben Sie den Prim&auml;rschl&uuml;ssel der Abfrage ein. Feldnamen mit Leerstellen, Sonderzeichen wie Minuszeichen (-) und &auml;hnliches m&uuml;ssen in eckige Klammern gefasst werden. Das hier angegebene Feld muss eindeutig f&uuml;r die als Basisabfrage formulierte Abfrage sein.<\/li>\n<li>Bezugsformular: Tragen Sie hier den Namen des Formulars ein, in das Sie das Suchformular als Unterformular eingef&uuml;gt haben.<\/li>\n<li>Bezugssteuerelement: Wenn das Suchergebnis nicht direkt im Detailbereich des Hauptformulars, sondern in einem zus&auml;tzlichen Steuerelement  wie beispielsweise einem Listenfeld angezeigt werden soll, geben Sie dessen Steuerelementnamen hier ein.<\/li>\n<li>Standardsuchfeld: Das ist das Feld, in dem nach dem Suchbegriff gesucht wird, wenn der Benutzer kein Feld angegeben hat, in dem gesucht werden soll. Dabei kann es sich um ein einzelnes Feld handeln. Sie k&ouml;nnen aber auch mehrere Felder zusammenf&uuml;gen, sodass mehrere Felder gleichzeitig durchsucht werden k&ouml;nnen. Dazu verbinden Sie die gew&uuml;nschten Felder beispielsweise folgenderma&szlig;en: Tabelle1.Feldname1 &#038; &#8220; &#8220; &#038; Tabelle1.Feldname2 &#038; &#8220; &#8220; &#038; Tabelle2.Feldname3. Wichtig ist, dass Sie immer den Tabellennamen vorne anf&uuml;gen und durch einen Punkt vom Feldnamen trennen.<\/li>\n<li>Unterformularname: Dieses Feld beinhaltet den Namen des Unterformulars. In den meisten F&auml;llen ist es der Name frmSuche. Wenn Sie allerdings mehrere Suchformulare innerhalb einer Datenbank verwenden m&ouml;chten, die unterschiedlich gestaltet sind, m&uuml;ssen Sie zun&auml;chst die gew&uuml;nschte Anzahl Kopien des Suchformulars anlegen und den Namen des zu verwendenden Unterformulars hier eintragen.<\/li>\n<h3>Besonderheiten bei der Angabe der Basisabfrage<\/h3>\n<p>F&uuml;r die Formulierung der Basisabfrage gelten die folgenden Regeln:<\/p>\n<li>Die Abfrage muss ein SELECT-Statement sein und darf keine WHERE-Klausel enthalten. Wenn Sie eine WHERE-Klausel ben&ouml;tigen, speichern Sie die Abfrage mit der WHERE-Klausel und legen ein neues SELECT-Statement dar&uuml;ber.<\/li>\n<li>Der SQL-Ausdruck darf auf gar keinen Fall durch ein Semikolon (;) abgeschlossen werden.<\/li>\n<li>Jedes Feld muss einen eindeutigen Namen haben, der m&ouml;glichst auch dem Namen in der &uuml;berschrift der Felder im Hauptformular entspricht. Diesen Namen weisen Sie, soweit er nicht dem Feldnamen entspricht, in der SELECT-Abfrage mit dem Schl&uuml;sselwort AS zu.<\/li>\n<p>Dies trifft zum Beispiel bei der Verwendung von Lookup-Tabellen wie in der Tabelle Artikel der Nordwind-Datenbank bei den Kategorien und Lieferanten zu.<\/p>\n<p>Die beiden Informationen werden jeweils &uuml;ber eine verkn&uuml;pfte Tabelle ermittelt und haben entsprechende Namen wie Lieferanten-Nr und Kategorie-Nr. Legen Sie hier wie in der Tabelle Artikel entsprechende Aliasnamen an.<\/p>\n<h3>Hinweis<\/h3>\n<p>Besonders wichtig f&uuml;r die Verwendung von Daten aus Lookuptabellen ist, dass Sie diese in der Basisabfrage mit der Haupttabelle verbinden und die Felder mit dem eigentlichen Inhalt, also beispielsweise dem Kategorienamen oder dem Firmennamen eines Lieferanten, ebenfalls hinzuf&uuml;gen. Nur so k&ouml;nnen Sie auch nach den eigentlichen Inhalten der Lookuptabellen suchen. <\/p>\n<h3>Praxis-Tipp<\/h3>\n<p>Wenn Sie Tabellenfeldern Alias-Namen geben m&ouml;chten, erledigen Sie das am besten in der Tabelle selbst &uuml;ber die Eigenschaft Beschriftung. Sie k&ouml;nnen auch das AS-Schl&uuml;sselwort in Abfragen verwenden, um einem Feld eine andere Beschriftung zu geben. Allerdings haben die im Tabellenentwurf festgelegten Beschriftungen immer Vorrang. Sollten Sie also f&uuml;r ein Feld einer Tabelle f&uuml;r verschiedene Zwecke unterschiedliche Beschriftungen geben wollen, lassen Sie die Eigenschaft Beschriftung im Tabellenentwurf unbedingt leer und verwenden Sie die gleichnamige Eigenschaft im Abfrageentwurf beziehungsweise das AS-Schl&uuml;sselwort. <\/p>\n<p>Auch wenn sie eine aus mehreren Tabellen zusammengesetzte Basisabfrage verwenden, die mehrere Felder enth&auml;lt, die aus verschiedenen Tabellen stammen, aber gleiche Feldnamen haben, m&uuml;ssen Sie mit der Eigenschaft Beschriftung im Tabellenentwurf f&uuml;r Eindeutigkeit bez&uuml;glich der Feldnamen sorgen.<\/p>\n<h3>Hinweis<\/h3>\n<p>Das Ergebnis der Basisabfrage sollte auf jeden Fall mit der Datenherkunft beziehungsweise Datensatzherkunft des Formulars oder Listenfeldes &uuml;bereinstimmen. Auf diese Weise stellen Sie sicher, dass die Durchf&uuml;hrung einer Suche ohne Parameter das angezeigte Ergebnis nicht beeinflusst. <\/p>\n<h3>Beispielkonfiguration<\/h3>\n<p>Tab. 2 enth&auml;lt die Werte f&uuml;r die Tabelle tblSucheParameter f&uuml;r das hier vorgestellte Beispiel.<\/p>\n<h2>Bereitstellen von Kriterien<\/h2>\n<p>Das Kombinationsfeld mit der Beschriftung Kriterium dient der Bereitstellung der m&ouml;glichen Kriterien. Die hier aufgef&uuml;hrten Kriterien sind je nach der Datenherkunft des Hauptformulars beziehungsweise der Datensatzherkunft des Listenfeldes zur Anzeige des Suchergebnisses verschieden.<\/p>\n<p>Sie m&uuml;ssen die erforderlichen Informationen f&uuml;r jedes Hauptformular, in dem Sie das Suchformular einsetzen, einzeln festlegen.<\/p>\n<p>Die notwendigen Daten werden in der Tabelle tblSucheKriterien gespeichert. Nachfolgend finden Sie die Beschreibung der Felder dieser Tabelle:<\/p>\n<li>KriteriumID: Eindeutiger Index der Datens&auml;tze dieser Tabelle. Da auch ein Wert mit dem Index 0 ben&ouml;tigt wird, ist die Verwendung eines Autowerts nicht m&ouml;glich und der Wert des Feldes KriteriumID muss von Hand eingegeben werden.<\/li>\n<li>Kriterium: Dieses Feld enth&auml;lt die f&uuml;r die jeweilige Suche eindeutige Bezeichnung der zu durchsuchenden Felder. Der hier angegebene Wert muss nicht unbedingt mit dem tats&auml;chlichen Feldnamen, aber auf jeden Fall mit der in der Spalten&uuml;berschrift des jeweiligen Kriteriums angegebenen Bezeichnung &uuml;bereinstimmen.<\/li>\n<pre>SELECT Artikel.[Artikel-Nr], Artikel.Artikelname, Artikel.[Lieferanten-Nr], Artikel.[Kategorie-Nr], Artikel.Liefereinheit, Artikel.Einzelpreis, Artikel.Lagerbestand, Artikel.BestellteEinheiten, Artikel.Mindestbestand, Artikel.Auslaufartikel, Kategorien.Kategoriename, Lieferanten.Firma\r\nFROM Lieferanten INNER JOIN (Kategorien INNER JOIN Artikel ON Kategorien.[Kategorie-Nr] = Artikel.[Kategorie-Nr]) ON Lieferanten.[Lieferanten-Nr] = Artikel.[Lieferanten-Nr];<\/pre>\n<p><b>Quellcode 1: Beispiel-Basisabfrage<\/b><\/p>\n<li>TabelleUndFeld: Wenn der Wert des Feldes Kriterium nicht mit dem Namen des Feldes &uuml;bereinstimmt, in dem nach dem angegebenen Kriterium gesucht werden soll, geben Sie hier den tats&auml;chlichen Feldnamen in der Form Tabellenname.Feldname an. Das ist vor allem dann wichtig, wenn die Basisabfrage aus mehreren zusammengesetzten Tabellen besteht.<\/li>\n<li>KriteriumstypID: Hiermit legen Sie die Art des Kriteriums fest. Die Auswahl wirkt sich vor allem auf die Zusammensetzung des SQL-Ausdrucks des zuk&uuml;nftigen Suchergebnisses aus. Die einzelnen Typen werden in Tab. 3 erl&auml;utert.<\/li>\n<li>SucheID: Verweis auf den jeweiligen Eintrag der Tabelle tblSucheParameter.<\/li>\n<table border=1>\n<tr>\n<td>\n<p><b>Feldname<\/b><\/p>\n<\/td>\n<td>\n<p><b>Wert<\/b><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>SucheID<\/p>\n<\/td>\n<td>\n<p>1<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>VerknuepfungsartID<\/p>\n<\/td>\n<td>\n<p>&lt;ausw&auml;hlen&gt;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>KriteriumID<\/p>\n<\/td>\n<td>\n<p>&lt;ausw&auml;hlen&gt;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>OperatorID<\/p>\n<\/td>\n<td>\n<p>&lt;ausw&auml;hlen&gt;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Basisabfrage<\/p>\n<\/td>\n<td>\n<p>SELECT&#8230; (s. Quellcode 1)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Primaerschluesselfeld<\/p>\n<\/td>\n<td>\n<p>[Artikel-Nr]<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Bezugsformular<\/p>\n<\/td>\n<td>\n<p>frmArtikel<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Bezugssteuerelement<\/p>\n<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>\n<p>Standardsuchfeld<\/p>\n<\/td>\n<td>\n<p>Artikel.Artikelname &#038; &#8220; &#8220; &#038; Kategorien.Kategoriename &#038;  &#8220; &#8220; &#038; Lieferanten.Firma<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Unterformularname<\/p>\n<\/td>\n<td>\n<p>frmSuche<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<p><b>Tab. 2: Beispieldaten f&uuml;r die Tabelle tblSucheParameter<\/b><\/p>\n<p>In Bild 4 finden Sie die Kriterien, die in dem Beispielsuchformular verwendet werden sollen.<\/p>\n<p>Da dieses Beispiel keine l&auml;ngeren Texte bietet, wurde f&uuml;r das Feld Artikel der Kriteriumstyp FeldwertVolltext festgelegt.<\/p>\n<p>Die beiden Felder Lieferant und Kategorie sind in den verkn&uuml;pften Lookuptabellen Lieferanten und Kategorien enthalten.<\/p>\n<table border=1>\n<tr>\n<td>\n<p><b>Kriteriumstyp<\/b><\/p>\n<\/td>\n<td>\n<p><b>Beschreibung<\/b><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Datum<\/p>\n<\/td>\n<td>\n<p>Datumsfeld. Wenn diese Kriteriumsart aktiv ist, steht das Kalenderformular zur Eingabe von Kriterien zur Verf&uuml;gung.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FeldwertTextAuswahl<\/p>\n<\/td>\n<td>\n<p>Alle vorhandenen Werte dieses Feldes werden als Kriterium angeboten. Bei den Werten handelt es sich um Texte.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FeldwertVolltext<\/p>\n<\/td>\n<td>\n<p>Es werden keine Kriterien zur Auswahl angeboten. Statt dessen k&ouml;nnen Texte f&uuml;r eine Volltextsuche eingegeben werden.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FeldwertZahlAuswahl<\/p>\n<\/td>\n<td>\n<p>Alle vorhandenen Werte dieses Feldes werden als Kriterium angeboten. Bei den Werten handelt es sich um Zahlenwerte.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>Ja\/Nein<\/p>\n<\/td>\n<td>\n<p>Ja\/Nein-Felder. Es stehen die beiden Ausdr&uuml;cke Ja und Nein als Kriterien zur Verf&uuml;gung.<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<p><b>Tab. 3: Kriteriumstypen und deren Beschreibung<\/b><\/p>\n<p><IMG height=\"211\" src=\"..\/fileadmin\/_temp_\/{3D2D10E1-1221-426A-A967-CB299763D519}\/pic004.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 4:  Kriterien des Beispielsuchformulars<\/span><\/b><\/p>\n<p>Lieferant und Kategorie sind auch die Bezeichnungen, die im Formular als Spalten&uuml;berschriften verwendet werden.<\/p>\n<p>Die eigentlichen Werte befinden sich allerdings nicht unter diesen Namen in der Basisabfrage, sondern werden dort &uuml;ber die Ausdr&uuml;cke Lieferanten.Firma beziehungsweise Kategorien.Kategoriename angesprochen.<\/p>\n<p>Sie k&ouml;nnen also im Feld Kriterium den Namen angeben, unter dem der Benutzer nach dem gew&uuml;nschten Kriterium suchen kann. Tats&auml;chlich findet die Suche aber nach dem unter TabelleUndFeld angegebenen Namen statt.<\/p>\n<p>Das Feld Bestelleinheit hat den Kriteriumstyp FeldwertTextAuswahl. Das bedeutet, dass alle in der Tabelle Artikel enthaltenen Werte f&uuml;r dieses Feld auch im Kombinationsfeld zur Auswahl des gew&uuml;nschten Kriteriums zur Verf&uuml;gung stehen.<\/p>\n<p>Gleiches gilt f&uuml;r die Felder mit dem Typ FeldwertZahlAuswahl. F&uuml;r das Feld Auslaufartikel stehen automatisch die beiden Werte Ja und Nein zur Verf&uuml;gung.<\/p>\n<h2>Festlegen der Operatoren<\/h2>\n<p>Eine Suche macht erst dann Sinn, wenn der Anwender mit den richtigen Operatoren arbeitet. Dazu schr&auml;nken Sie die Auswahl der Operatoren am besten direkt soweit ein, dass der Benutzer nur sinnvolle Kombinationen w&auml;hlen kann.<\/p>\n<p>Diese Einstellung nehmen Sie in der Tabelle tblSucheKriterienOperatoren vor. W&auml;hlen Sie einfach alle gew&uuml;nschten Kombinationen aus Kriterium und Operator aus. Beispiele finden Sie in Bild 5.<\/p>\n<p><IMG height=\"588\" src=\"..\/fileadmin\/_temp_\/{3D2D10E1-1221-426A-A967-CB299763D519}\/pic005.png\" width=\"349\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 5:  Beispiele f&uuml;r Kombinationen aus Kriterien und Operatoren<\/span><\/b><\/p>\n<p>Wenn Sie alle beschriebenen Einstellungen vorgenommen haben, sollte das Suchformular funktionieren.<\/p>\n<p><IMG height=\"255\" src=\"..\/fileadmin\/_temp_\/{3D2D10E1-1221-426A-A967-CB299763D519}\/pic006.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 6:  Beispielformular mit Listenfeld<\/span><\/b><\/p>\n<p>Als letzten Schritt sollten Sie die in der Tabelle tblSucheParameter enthaltene Basisabfrage noch als Datenherkunft des Zielformulars angeben, damit die Datenherk&uuml;nfte einer leeren Suchabfrage und des unber&uuml;hrten Formulars auf jeden Fall &uuml;bereinstimmen.<\/p>\n<h3>Beispielformulare<\/h3>\n<p>Neben dem hier vorgestellten Beispielformular frmArtikel finden Sie in der Beispieldatenbank noch ein weiteres Beispielformular namens frmBestellungen (siehe Bild 6).<\/p>\n<p>Mit dem Suchformular haben Sie ein n&uuml;tzliches Werkzeug, mit dem Sie sich eine Menge Arbeit sparen k&ouml;nnen. <\/p>\n<p>Die hier vorgeschlagene Art der Suche d&uuml;rfte in Zusammenhang mit Datenbanken bisher nicht besonders oder gar nicht verbreitet sein. <\/p>\n<p>Wer schon einmal mit Google gearbeitet und mehr als nur einzelne, durch Leerzeichen getrennte Begriffe in das Suchfeld eingegeben hat, wird auch an dem hier vorgestellten Suchformular seine Freude haben. Neben der zweigleisigen M&ouml;glichkeit der Eingabe von Suchbegriffen ist auch der Platzbedarf gemessen an dem Funktionsumfang verh&auml;ltnism&auml;&szlig;ig gering &#8211; wobei hier durch einige &auml;nderungen sicher noch Optimierungspotenzial vorhanden ist.<\/p>\n<p>Dennoch bietet das Suchformular eine gute Zielscheibe f&uuml;r weitere Verbesserungen: <\/p>\n<p>So k&ouml;nnte beispielsweise die Interpretation von Klammern eingearbeitet werden, um die Verkettung der Suchkriterien besser anpassen zu k&ouml;nnen. <\/p>\n<p>Eine Benutzeroberfl&auml;che zur Einstellung der Parameter in den Konfigurationstabellen der verwendeten Suchformulare w&auml;re ebenfalls eine sinnvolle Erweiterung.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Suchfunktionen sind eine der meistprogrammierten Funktionen von Datenbankanwendungen. Es gibt nur wenige Datenbanken, die nicht &uuml;ber mindestens eine mehr oder weniger aufw&auml;ndige Suchfunktion verf&uuml;gen. Auf Grund der sehr verschiedenen Anforderungen m&uuml;ssen Suchfunktionen immer wieder neu programmiert werden. Im vorliegenden Beitrag lernen Sie ein Suchformular kennen, das Sie in beliebige Formulare integrieren und f&uuml;r die Suche in Formularen und Listenfeldern verwenden 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":[66012004,662004,44000028,44000027,44000023],"tags":[],"class_list":["post-55000205","post","type-post","status-publish","format-standard","hentry","category-66012004","category-662004","category-Ergonomie_und_Benutzeroberflaeche","category-Loesungen","category-Mit_Formularen_arbeiten"],"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>Universelle Suchleiste - 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\/Universelle_Suchleiste\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Universelle Suchleiste\" \/>\n<meta property=\"og:description\" content=\"Suchfunktionen sind eine der meistprogrammierten Funktionen von Datenbankanwendungen. Es gibt nur wenige Datenbanken, die nicht &uuml;ber mindestens eine mehr oder weniger aufw&auml;ndige Suchfunktion verf&uuml;gen. Auf Grund der sehr verschiedenen Anforderungen m&uuml;ssen Suchfunktionen immer wieder neu programmiert werden. Im vorliegenden Beitrag lernen Sie ein Suchformular kennen, das Sie in beliebige Formulare integrieren und f&uuml;r die Suche in Formularen und Listenfeldern verwenden k&ouml;nnen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-06T15:17:36+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781\" \/>\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=\"21\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Universelle Suchleiste\",\"datePublished\":\"2020-05-06T15:17:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/\"},\"wordCount\":4150,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg07.met.vgwort.de\\\/na\\\/3a25decee63b4999b8b390d48ece3781\",\"articleSection\":[\"1\\\/2004\",\"2004\",\"Ergonomie und Benutzeroberfl\u00e4che\",\"L\u00f6sungen\",\"Mit Formularen arbeiten\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/\",\"name\":\"Universelle Suchleiste - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg07.met.vgwort.de\\\/na\\\/3a25decee63b4999b8b390d48ece3781\",\"datePublished\":\"2020-05-06T15:17:36+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg07.met.vgwort.de\\\/na\\\/3a25decee63b4999b8b390d48ece3781\",\"contentUrl\":\"http:\\\/\\\/vg07.met.vgwort.de\\\/na\\\/3a25decee63b4999b8b390d48ece3781\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Universelle_Suchleiste\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Universelle Suchleiste\"}]},{\"@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":"Universelle Suchleiste - 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\/Universelle_Suchleiste\/","og_locale":"de_DE","og_type":"article","og_title":"Universelle Suchleiste","og_description":"Suchfunktionen sind eine der meistprogrammierten Funktionen von Datenbankanwendungen. Es gibt nur wenige Datenbanken, die nicht &uuml;ber mindestens eine mehr oder weniger aufw&auml;ndige Suchfunktion verf&uuml;gen. Auf Grund der sehr verschiedenen Anforderungen m&uuml;ssen Suchfunktionen immer wieder neu programmiert werden. Im vorliegenden Beitrag lernen Sie ein Suchformular kennen, das Sie in beliebige Formulare integrieren und f&uuml;r die Suche in Formularen und Listenfeldern verwenden k&ouml;nnen.","og_url":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/","og_site_name":"Access im Unternehmen","article_published_time":"2020-05-06T15:17:36+00:00","og_image":[{"url":"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"21\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Universelle Suchleiste","datePublished":"2020-05-06T15:17:36+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/"},"wordCount":4150,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#primaryimage"},"thumbnailUrl":"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781","articleSection":["1\/2004","2004","Ergonomie und Benutzeroberfl\u00e4che","L\u00f6sungen","Mit Formularen arbeiten"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/","url":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/","name":"Universelle Suchleiste - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#primaryimage"},"thumbnailUrl":"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781","datePublished":"2020-05-06T15:17:36+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#primaryimage","url":"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781","contentUrl":"http:\/\/vg07.met.vgwort.de\/na\/3a25decee63b4999b8b390d48ece3781"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Universelle_Suchleiste\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Universelle Suchleiste"}]},{"@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\/55000205","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=55000205"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000205\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55000205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55000205"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55000205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}