アクセスVBAあいまい検索を使ってクエリで抽出

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

データの登録をして、データが溜まってきたら、そのデータを活用したいですね。

データが検索できたら、データの整理や修正ができますね。

 

今回は、検索したデータがフォームに表示されるように、クエリを使って作成してみましょう。

 

ファイルを準備しよう

 

説明のために「宛名印刷」ファイルを使用します。同じファイルの方が理解しやすいので、下記の記事から作成してみてくださいね!

 

今回作成したいクエリは、重複チェックを作成した時のクエリの作成方法とよく似ています。下記の記事で確認してみてくださいね!

 

関連記事
 
 
 

クエリを使ってあいまい検索

 

(はてな君)
あいまい検索ってな~に?

 

例えば、「赤リンゴ」を検索したい時に「赤リンゴ」って入力する方法は「完全一致」って言います。

「赤」だけ入力して検索する方法を「部分一致」って言ってこれが「あいまい検索」にあたります。

 

「赤」だけの検索だと、「赤リンゴ」だけじゃなくて、「赤ピーマン」とか「赤」が付いたものが結果として表示されますね。

「赤」から始まるものを結果に表示させるのは前方一致ですね。

 

(あいちゃん)
今回は、前方一致のあいまい検索を使用します!

ではさっそくクエリを作成しましょう。

 

クエリの新規作成で、「T_住所録」テーブルからデータを抽出します。

おさらいをしてもらったので、ここまではOKだと思います。

 

あとは、「氏名」の「抽出条件」に下記を直接入力するか、ビルドで入力します。

 

Like [Forms]![F_データ検索]![tx氏名検索] & “*”
 
「Like」の後ろと「&」の前後には半角の空白が必要です!
 
 
 
 
 
ビルドなら上の画面で、入力します。
 
 
「*」ってワイルドカードって言ってあいまい検索の際に使われます。
 
「*」を後ろに置くと前方一致で、「*」を前に置くと後方一致になります。 
 
 
 
 
 
 
今回の場合だと、「F_データ検索」の「tx氏名」に入力された値から始まるデータを表示してくださいねって意味になります。
 
 
では、さっそく試してみましょう。
 
 
「F_データ検索」フォームをフォームビューで開いて、「tx氏名」に入力したことのある氏名を入力し、カーソルを移動させておきましょう。
 
 
前方一致にしてあるので、姓のみでOKです。
 
 
 
 
 
 
入力したら、「F_データ検索」フォームはそのままで(閉じない)、クエリをデータシートビューに切り替えてみましょう。
 
 
 
 
 
過去に入力したデータが表示されていればクエリ作成成功です!
 
 
表示されない場合は、どこかに入力ミスがありますので、確認してみてください。
 
 
 
クエリは「Q_検索」と名前を付けておきましょう。
 
 

宿題

 

突然ですが、宿題です。

 

「F_メインメニュー」の「データ検索」ボタンを左クリックで「F_データ検索」が開くように、また「F_データ検索」の「メインメニューへ」ボタンを左クリックで「F_メインメニュー」が開くようにしてみてください。

Accessフォームのボタンから別フォームを開く方法

2018年9月23日
 
 
(はてな君)
前の記事見てできたよ!
 
 

まとめ

 

今回のお話は少し難しかったかもしれません。

クエリの作成やフォームの作成を何度もやっているうちに、あ~こういうことかってわかってくると思います。

 

わからない~って悩むよりも、こんなもんかなぁって気楽に構えているぐらいでちょうどいいかなって思います。