Access (一般機能)

Accessの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Access 2016)
フォームで入力した値で抽出する際のクエリの記述方法
投稿日時: 19/02/19 07:24:04
投稿者: hay.hide

47都道府県を含む住所録テーブルがあります。
住所フィールドには、
東京都新宿区新宿1-1-1
というようにデータが入っています。
単票フォームのヘッダーにテキストボックスとボタンンを
配置して、テキストボックスに入力した都道府県のレコードがフォームに
表示されるようにしたいと考えています。
この場合、フォームの元になっているクエリの住所フィールドの抽出条件には
どのように記載したら、よろしいでしょうか?
おそらく、Like や * と フォームのテキストボックスの表記を組み合わせる
のでしょうが今ひとつわかるません。
 
フォーム名 住所録F
テキストボックス名 検索都道府県
 
としています。
 
よろしくおねがいします。

回答
投稿日時: 19/02/19 09:42:46
投稿者: Suzu

フォームのテキストボックスに入力された値をクエリの抽出条件に設定する
https://www.moug.net/tech/acopr/0040014.html
 
パラメータクエリのパラメータをあいまい検索にする
https://www.moug.net/tech/acopr/0040010.html
 
の組み合わせになります。
 
IIf(IsNull([Forms]![住所録F]![検索都道府県]),True,
[住所] LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*")

投稿日時: 19/02/19 13:03:45
投稿者: hay.hide

上記の式を入力すると、複雑すぎます。式を簡単にしてください。と表示されてしまいます。
 
LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*" の部分だけ記述して抽出できる様にはなりました。
 
IIf(IsNull([Forms]![住所録F]![検索都道府県]),True,
[住所] LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*")
 
の場合と、どこが異なるのでしょうか?

回答
投稿日時: 19/02/19 14:19:13
投稿者: Suzu

引用:
LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*" の部分だけ記述して抽出できる様にはなりました。

これをどこに入れましたか?
 
そして
引用:
IIf(IsNull([Forms]![住所録F]![検索都道府県]),True, [住所] LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*")
これはどこに入れたのですか?
 
もう一度
【フォームのテキストボックスに入力された値をクエリの抽出条件に設定する】
https://www.moug.net/tech/acopr/0040014.html
のなかで、式をどこに入れているか確認してください。

投稿日時: 19/02/19 16:07:54
投稿者: hay.hide

[quote="Suzu"]

引用:
LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*" の部分だけ記述して抽出できる様にはなりました。

これをどこに入れましたか?
 
 
クエリの抽出条件に入れました。
 
そして
引用:
IIf(IsNull([Forms]![住所録F]![検索都道府県]),True, [住所] LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*")
これはどこに入れたのですか?
 
 
これは、クエリの空いているフィールドに式を入れるのですね。
これだと、クエリのデータシートビューに抽出結果がでますね。
 
希望は、
単票フォームのヘッダーにテキストボックスとボタンンを
配置して、テキストボックスに入力した都道府県のレコードがフォームに
表示されるようにしたいと考えています。
 
つまり、フォーム上に抽出結果を出したいという事なのですが。
 

投稿日時: 19/02/19 21:08:04
投稿者: hay.hide

[quote="hay.hide"]

Suzu さんの引用:
引用:
LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*" の部分だけ記述して抽出できる様にはなりました。

これをどこに入れましたか?
 
 
クエリの抽出条件に入れました。
 
そして
引用:
IIf(IsNull([Forms]![住所録F]![検索都道府県]),True, [住所] LIKE "*" & [Forms]![住所録F]![検索都道府県] & "*")
これはどこに入れたのですか?
 
 
これは、クエリの空いているフィールドに式を入れるのですね。
これだと、クエリのデータシートビューに抽出結果がでますね。
 
希望は、
単票フォームのヘッダーにテキストボックスとボタンンを
配置して、テキストボックスに入力した都道府県のレコードがフォームに
表示されるようにしたいと考えています。
 
つまり、フォーム上に抽出結果を出したいという事なのですが。
 

 
クエリの抽出条件に入れることで、単票フォームに抽出結果が出るようになりました。