Supportnet / Forum / Datenbanken
DomWert
Frage
Wenn ich aus einer nicht verknüpften Tabelle einen Wert Auslesen möchte, kann ich das mit der Funktion DomWert machen. Habe allerdings mit der Formulierung der Bedingung Probleme, so daß der Wert nicht ausgelesen wird. Danke für eure Hilfe
Antwort 1 von MasterOfHardness
Die DomWert-Funktion ist tatsächlich schwierig (empfinde zumindest ich so). Ich versuch mal, die Angaben aus der Hilfe zu übersetzten:
DomWert(Ausdr, Domäne,[Kriterien])
Ausdr gibt den Feldnamen in der Tabelle an, dessen Wert ausgelesen werden soll.
Domäne klingt schlimmer als es ist. Hier ist einfach der Name der Tabelle oder Abfrage gemeint, die das Feld enthält, das ausgelesen werden soll. Auch aus Formularen kann man auf diese Weise Werte auslesen.
Kriterien sind die Bedingungen, die erfüllt sein müssen, damit der Wert des Feldes gefunden wird. Anders ausgedrückt, es ist der Datensatz gemeint, um den es geht.
Beispiel: DomWert("[Nachname]", "Personal", "[Personal-Nr] = 1") gibt den Inhalt des Feldes Nachname aus der Tabelle "Personal" zurück, und zwar genau den Datensatz (Zeile der Tabelle), wo der Inhalt des Feldes Personal-Nr den Wert 1 hat.
Bei den Kriterien lassen sich durchaus auch die logischen Verknüpfungen UND bzw. ODER verwenden. Sollte die Bedingung nicht eindeutig sein (also innerhalb der Tabelle mehrmals auftreten), dann wird der erste Wert ausgegeben, wo die definierten Bedingungen erfüllt sind. Treten die definierten Bedingungeg gar nicht auf, wird Null ausgegeben.
Hinweis: Die Access-Hilfe spuckt bei der Suche nach DomWert Informationen zur Funktion DLookup aus. Irritiert etwas, ist aber dasselbe.
Solltest du bei der Umsetzung Schwierigkeiten haben, teste mal mit einer anderen Syntax, z.B. die Anführungszeichen durch eckige Klammern ersetzen oder umgekehrt. Auch Kombinationen solltest du probieren. Mir ist es bei anderen Funktionen auch schon passiert, dass die Hilfe ein Komma zum Trennen der einzelnen Funktionsargumente vorgab, aber ein Semikolon dorthingehörte. Die Access-Hilfe ist da etwas schludrig geschrieben.
Besser noch ist, zum Aufbau der Syntax den Ausdrucksgenerator zu verwenden.
Viel Erfolg!!!
DomWert(Ausdr, Domäne,[Kriterien])
Ausdr gibt den Feldnamen in der Tabelle an, dessen Wert ausgelesen werden soll.
Domäne klingt schlimmer als es ist. Hier ist einfach der Name der Tabelle oder Abfrage gemeint, die das Feld enthält, das ausgelesen werden soll. Auch aus Formularen kann man auf diese Weise Werte auslesen.
Kriterien sind die Bedingungen, die erfüllt sein müssen, damit der Wert des Feldes gefunden wird. Anders ausgedrückt, es ist der Datensatz gemeint, um den es geht.
Beispiel: DomWert("[Nachname]", "Personal", "[Personal-Nr] = 1") gibt den Inhalt des Feldes Nachname aus der Tabelle "Personal" zurück, und zwar genau den Datensatz (Zeile der Tabelle), wo der Inhalt des Feldes Personal-Nr den Wert 1 hat.
Bei den Kriterien lassen sich durchaus auch die logischen Verknüpfungen UND bzw. ODER verwenden. Sollte die Bedingung nicht eindeutig sein (also innerhalb der Tabelle mehrmals auftreten), dann wird der erste Wert ausgegeben, wo die definierten Bedingungen erfüllt sind. Treten die definierten Bedingungeg gar nicht auf, wird Null ausgegeben.
Hinweis: Die Access-Hilfe spuckt bei der Suche nach DomWert Informationen zur Funktion DLookup aus. Irritiert etwas, ist aber dasselbe.
Solltest du bei der Umsetzung Schwierigkeiten haben, teste mal mit einer anderen Syntax, z.B. die Anführungszeichen durch eckige Klammern ersetzen oder umgekehrt. Auch Kombinationen solltest du probieren. Mir ist es bei anderen Funktionen auch schon passiert, dass die Hilfe ein Komma zum Trennen der einzelnen Funktionsargumente vorgab, aber ein Semikolon dorthingehörte. Die Access-Hilfe ist da etwas schludrig geschrieben.
Besser noch ist, zum Aufbau der Syntax den Ausdrucksgenerator zu verwenden.
Viel Erfolg!!!

