ACCESS クエリの DlookUp 関数

ACCESS クエリの DlookUp 関数

私は、リンクされた 2 つのデータベース (アクション アイテム リストと UserInfo) で作業しています。Sharepoint サイトからアクション アイテム リストをインポートしました。

ここに画像の説明を入力してください

私は、条件 [名前を入力してください] に一致する「アクション」のみを表示しようとしています。そのために、2 つのデータベースの関係を確認したところ、「Owner.Value」(「アクション アイテム リスト」データベースのテキスト属性) が「ID」(UserInfo データベースの外部キー) に接続されていることがわかりました。期待どおりの結果を得るために、クエリを実行して自分の名前を入力しましたが、次のエラーが発生します。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

誰かが私を助けてくれるかもしれません。あなたの専門知識に頼っています。ご協力をよろしくお願いします!

答え1

まず、式を修正しますDLookup。条件はテキスト フィールド ( Name) の値をフィルター処理するため、フィルターに使用する値は一重引用符または二重引用符で囲む必要があります。そうしないと、結果は次のようになります。

Name = Thomas Orvain

結果の SQL では、 と は別々のフィールドとして扱われますThomasOrvain

これを解決するには、式を次のように変更しますDLookup

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

しかし、テーブルとテーブルINNER JOINの間にはすでに構築されているので、式は次のようになります。Action Items ListUserInfoDLookup全く必要ありません

代わりに、選択基準をフィールドに直接適用できますName。たとえば、次のコードをクエリの SQL ビューにコピーします。

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]

関連情報