【Access】Dlookupで複数条件のデータを表示する方法

アクセス担当のまみです。

 

エクセルのVLookUpってとっても活躍してくれます。

元になる表からデータを引っ張ってきてくれるので、入力ミスが減りますね。元の表が間違っていたらダメだけど・・・

アクセスではDLookUpが同じような働きをしてくれます。

 

複数条件に一致するデータの表示もできちゃうので、この機会にDLookUpを使えるようになっちゃいましょう!

 

DLookUp関数

 

(あいちゃん)
エクセルに慣れていると、DLookUp関数はすぐに理解できるんじゃないかな~。

 

(はてな君)
アクセスってなんだか難しいって人多いよ。

 

(あいちゃん)
そんなことないんだけどね。

 

構文
DLookUp(フィールド名,テーブル名またはクエリ名,条件式)

 

この構文を使ってデータを表示してくれます。

 

1つの条件でDLookUp関数を使用する

 

実際にDLookUp関数を使ってみましょう!

 

列車の予約を管理するようなデータを作ってみました。

 

(はてな君)
列車に乗りた~い!

 

 

使用するテーブル

「T_顧客名簿」

 

「T_予約表」

 

(あいちゃん)
「T_顧客名簿」と「T_予約表」の2つのテーブルを使ってみるよ!

 

(はてな君)
わかった~!「T_予約表」に「氏名」がないから「氏名」を表示させるんだ!

 

(あいちゃん)
ぴんぽ~ん!

 

 

使用例
氏名: DLookUp(“氏名”,”T_顧客名簿”,”顧客NO=” & [顧客NO])

 

 

(あいちゃん)
顧客NOが文字列だったら「”」の位置とか変わってくるので注意が必要だよ!

 

では実際にクエリで「T_予約表」に氏名を表示させてみましょう。

「T_予約表」から表示させたいフィールド名を選んでくださいね。

 

「氏名」の表示は下記のとおりです。

 

 

(はてな君)
氏名が表示されたよ!住所も表示させてみる!

 

 

住所を表示されるには、先程の氏名の部分を住所に変えれば表示できます。

 

【アクセス】テーブルを結合させてクエリで表示させよう!

2018年10月25日

 

エクセルに慣れていると、DLookUpって理解しやすいと思うんだけど、アクセスに慣れてくるともっと簡単にできる方法があるのでその方法をお伝えしますね。

 

クエリを結合させてデータを表示する

 

 

リボンの「作成」タブから「クエリデザイン」を選択し、①「T_顧客名簿」と「T_予約表」の2つのテーブルを②「追加(A)」します。

 

 

2つのテーブルを追加すると「顧客NO」が結ばれているので、④表示させたいフィールドを選択しましょう。

 

(あいちゃん)
顧客NOが結ばれていなかったら自分で結んでね!

 

結果はさっきと同じになります。

 

(はてな君)
そっかぁ。慣れたらこっちの方が簡単かも!

 

 

複数(2つ)条件でDLookUp関数を使用する

 

(あいちゃん)
さっき使ったテーブルのほかにもう1つテーブルを増やすよ!

 

使用するテーブル

「T_車両編成」

 

(はてな君)
わかった!種類を表示させるんでしょ!

 

(あいちゃん)
正解で~す!

 

使用例
種類: DLookUp(“種類”,”T_車両構成”,”車両番号='” & [車両番号] & “‘” And “席番号='” & [席番号] & “‘”)

 

(はてな君)
「’」とかあってさっきとちょっと違うね。

 

(あいちゃん)
今度は文字列だからね。「’」で囲ってあげる必要があるんだ。「&」が後ろにも必要なんだよ

 

文字列の場合は数値型の場合と書き方が違います。

‘” & [文字列] & “‘”

 

(あいちゃん)
そうそうフィールドにそのまま入力するのって大変でしょ!画面を広く使える方法があるので教えちゃいますね!

 

(はてな君)
入力しにくいって思ってた。

 

フィールドで右クリックして「ズーム」を選択します。

 

表示された画面に入力して「OK」を左クリックすれば、大きな画面で入力ができます。

 

(はてな君)
とっても見やすいね。

 

(あいちゃん)
実行結果は下の図のようになるよ!

 

 

(はてな君)
すごいね。氏名と住所を表示させるテーブルと種類を表示させるテーブルは別なのに。

 

(あいちゃん)
でね、さっきみたいにテーブルをつなげる方法は今度は使えないんだ。

 

(はてな君)
なんで?

 

「T_車両構成」テーブルをよく見てみましょう。

 

例えば車両番号は1号車が6つ2号車が6つと同じデータが重なっています。こういう場合は、データが1つに決まらないので、テーブル同士をつなげる方法ではうまくいきません。

 

 

(はてな君)
ふ~ん。そうなんだぁ。得意不得意があるんだね。

 

まとめ

 

DLookUpを上手に使って欲しいデータを表示させちゃいましょう。

 

ぜひ活用してくださいね!