DlookUp-Funktion in ACCESS-Abfrage

DlookUp-Funktion in ACCESS-Abfrage

Ich arbeite an zwei Datenbanken, die miteinander verknüpft sind: Aktionselementliste und Benutzerinformationen. Ich habe die Aktionselementliste von meiner Sharepoint-Site importiert.

Bildbeschreibung hier eingeben

Ich versuche, nur die „Aktionen“ anzuzeigen, die dem Kriterium [Geben Sie Ihren Namen ein] entsprechen. Dazu habe ich mir die Beziehung der beiden Datenbanken angesehen und wir können sehen, dass „Owner.Value“ (Textattribut der Datenbank „Aktionselementliste“) mit „ID“ (dem Fremdschlüssel der UserInfo-Datenbank) verknüpft ist. Um die erwarteten Ergebnisse zu erhalten, führe ich die Abfrage aus und gebe meinen Namen ein, erhalte jedoch die folgende Fehlermeldung:

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Vielleicht kann mir ja jemand weiterhelfen. Ich bin auf eure Expertise angewiesen. Vielen Dank schon mal für eure Unterstützung!

Antwort1

Korrigieren Sie zunächst Ihren DLookupAusdruck: Da das Kriterium den Wert eines Textfelds ( Name) filtert, muss der für den Filter verwendete Wert in einfache oder doppelte Anführungszeichen eingeschlossen werden, sonst lautet das Ergebnis:

Name = Thomas Orvain

Dabei werden Thomasund Orvainim resultierenden SQL als separate Felder behandelt.

Um dies zu beheben, können Sie den DLookupAusdruck wie folgt ändern:

DLookup("Name", "UserInfo", "Name = '" & [Enter your name] & "'")

INNER JOINDa Sie jedoch bereits eine zwischen der Action Items ListTabelle und der Tabelle erstellt haben UserInfo, lautet der DLookupAusdrucküberhaupt nicht erforderlich.

Stattdessen können Sie Auswahlkriterien Namedirekt auf das Feld anwenden, indem Sie beispielsweise Folgendes in die SQL-Ansicht Ihrer Abfrage kopieren:

select 
    [Action Items List].Action,
    [Action Items List].Status,
    [Action Items List].Owner.Value
from
    [Action Items List] inner join UserInfo on
    [Action Items List].Owner.Value = UserInfo.ID
where
    UserInfo.Name = [Enter your name]

verwandte Informationen