DLookup-Funktion

In Access-Desktopdatenbanken können Sie die DomWert-Funktion verwenden, um den Wert eines bestimmten Felds aus einer angegebenen Datensatzgruppe (einer Domäne) abzurufen. Verwenden Sie die DomWert-Funktion in einem VBA-Modul (Visual Basic for Applications), einem Makro, einem Abfrageausdruck oder einem berechneten Steuerelement in einem Formular oder Bericht.

Hinweis : Dieser Artikel gilt nicht für Access Web Apps.

Sie können die DomWert-Funktion verwenden, um den Wert eines Felds anzuzeigen, das nicht in der Datensatzquelle für das Formular oder den Bericht enthalten ist. Angenommen, Sie verfügen über ein Formular, das auf einer Tabelle "Bestelldetails" basiert. In dem Formular werden die Felder "BestellNr", "ArtikelNr", "Einzelpreis", "Menge" und "Rabatt" angezeigt. Das Feld "Artikelname" befindet sich jedoch in einer anderen Tabelle, nämlich der Tabelle "Artikel". Sie können die DomWert-Funktion in einem berechneten Steuerelement verwenden, um den Wert für "Artikelname" in demselben Formular anzuzeigen.

Syntax

DomWert( Ausdruck; Domäne ; [Kriterien] )

Die Syntax der DomWert-Funktion weist die folgenden Argumente auf:

Argument

Beschreibung

Ausdruck

Erforderlich. Ein Ausdruck, der das Feld angibt, dessen Wert zurückgegeben werden soll. Es kann sich um einen Zeichenfolgenausdruck handeln, der ein Feld in einer Tabelle oder Abfrage angibt, oder um einen Ausdruck, der für Daten in diesem Feld eine Berechnung durchführt. Sie können in Ausdruck den Namen eines Felds in einer Tabelle, ein Steuerelement in einem Formular, eine Konstante oder eine Funktion einfügen. Wenn Ausdruck eine Funktion enthält, kann es sich um eine integrierte oder um eine benutzerdefinierte Funktion handeln, aber nicht um ein anderes Domänenaggregat oder eine SQL-Aggregatfunktion.

Domäne

Erforderlich. Ein Zeichenfolgenausdruck, der die Gruppe von Datensätzen angibt, die die Domäne bilden. Es kann sich um einen Tabellennamen oder um einen Abfragenamen für eine Abfrage handeln, die keinen Parameter erfordert.

Kriterien

Optional. Ein Zeichenfolgenausdruck zur Beschränkung des Datenbereichs, für den die DomWert-Funktion ausgeführt wird. Kriterien entspricht z. B. häufig der WHERE-Klausel in einem SQL-Ausdruck, ohne das Wort "WHERE". Wenn Kriterien nicht angegeben wird, wertet die DomWert-Funktion Ausdruck für die gesamte Domäne aus. Ein in Kriterien angegebenes Feld muss auch in Domäne enthalten sein. Andernfalls gibt die DomWert-Funktion einen Nullwert zurück.

Hinweise

Die DomWert-Funktion gibt einen einzelnen Feldwert zurück, der auf den in Kriterien angegebenen Informationen basiert. Obwohl das Argument Kriterien optional ist, gibt die DomWert-Funktion einen zufällig abgerufenen Wert in der Domäne zurück, wenn Sie keinen Wert für Kriterien angeben.

Wenn kein Datensatz die Bedingungen in Kriterien erfüllt oder wenn Domäne keine Datensätze enthält, gibt die DomWert-Funktion Null zurück.

Wenn die Bedingungen in Kriterien von mehreren Feldern erfüllt werden, gibt die DomWert-Funktion das erste Vorkommen zurück. Beim Angeben der Kriterien sollte sichergestellt werden, dass der von der DomWert-Funktion zurückgegebene Feldwert eindeutig ist. Es kann sinnvoll sein, einen Primärschlüsselwert für die Kriterien zu verwenden (wie z. B. [EmployeeID] im folgenden Beispiel), um sicherzustellen, dass die DomWert-Funktion einen eindeutigen Wert zurückgibt:

Dim varX As Variant
varX = DLookup("[LastName]", "Employees", _
"[EmployeeID] = 1")

Unabhängig davon, ob Sie die DomWert-Funktion in einem Makro oder Modul, einem Abfrageausdruck oder einem berechneten Steuerelement verwenden, müssen Sie das Argument Kriterien sorgfältig erstellen, damit es korrekt ausgewertet wird.

Sie können die DomWert-Funktion verwenden, um Kriterien in der Zeile "Kriterien" einer Abfrage, in einem berechneten Feldausdruck einer Abfrage oder in der Zeile "Aktualisieren" einer Aktualisierungsabfrage anzugeben.

Sie können die DomWert-Funktion auch in einem Ausdruck für ein berechnetes Steuerelement in einem Formular oder Bericht verwenden, wenn sich das anzuzeigende Feld nicht in der Datensatzquelle befindet, auf der das Formular oder der Bericht basiert. Angenommen, Sie verfügen über ein Formular "Bestelldetails", das auf der Tabelle "Bestelldetails" basiert und das zum Anzeigen des Felds "ArtikelNr" das Textfeld "ArtikelNr" enthält. Sie können ein weiteres Textfeld erstellen und dessen Eigenschaft Steuerelementinhalt auf den folgenden Ausdruck festlegen, um "Artikelname" basierend auf dem Wert im Textfeld in einer Tabelle "Artikel" zu finden:

=DLookup("[ProductName]", "Products", "[ProductID] =" & Forms![Order Details]!ProductID)

Tipps

  • Sie können zwar die DomWert-Funktion verwenden, um einen Wert aus einem Feld in einer Fremdtabelle anzuzeigen, aber es kann effizienter sein, eine Abfrage mit allen aus beiden Tabellen benötigten Feldern zu erstellen und das Formular oder den Bericht auf dieser Abfrage zu basieren.

  • Sie können auch den Nachschlage-Assistenten verwenden, um nach Werten in einer Fremdtabelle zu suchen.

Hinweis : Bei Verwendung dieser Funktion werden nicht gespeicherte Änderungen an Datensätzen in Domäne nicht berücksichtigt. Wenn die DomWert-Funktion auf den geänderten Werten basieren soll, müssen Sie die Änderungen zunächst speichern, indem Sie auf der Registerkarte Daten unter Datensätze auf Datensatz speichern klicken, damit der Fokus zu einem anderen Datensatz wechselt, oder indem Sie die Methode Aktualisieren verwenden.

Beispiel

Hinweis : Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

Das folgende Beispiel gibt Namensinformationen aus dem Feld "Firma" zurück, das in dem Datensatz enthalten ist, der die Bedingungen in Kriterien erfüllt. Als Domäne wird die Tabelle "Versandfirmen" verwendet. Das Argument Kriterien beschränkt die resultierenden Datensätze auf solche, bei denen für "VersandfirmenNr" der Wert "1" angegeben ist.

Dim varX As Variant
varX = DLookup("[CompanyName]", _
"Shippers", "[ShipperID] = 1")

Im nächsten Beispiel für die Tabelle "Versandfirmen" wird das Formularsteuerelement "VersandfirmenNr" verwendet, um Kriterien für die DomWert-Funktion bereitzustellen. Beachten Sie, dass der Verweis auf das Steuerelement außerhalb der Anführungszeichen für die Zeichenfolgen steht. Dadurch wird sichergestellt, dass Access bei jedem Aufrufen der DomWert-Funktion den aktuellen Wert aus dem Steuerelement abruft.

Dim varX As Variant
varX = DLookup("[CompanyName]", "Shippers", _
"[ShipperID] = " & Forms!Shippers!ShipperID)

Im nächsten Beispiel wird die Variable intSearch verwendet, um den Wert abzurufen.

Dim intSearch As Integer
Dim varX As Variant
intSearch = 1
varX = DLookup("[CompanyName]", "Shippers", _
"[ShipperID] = " & intSearch)
Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×