人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

急いでます!Access2000で検索機能をつけたいのですがサンプルファイルが存在しているサイトはないでしょうか?検索機能とは、テーブルの中に「氏名」「年齢」「地域」などが存在していて、その中から30歳以上を検索!とかけると30歳以上の物だけ表示してくれる機能です。この30歳以上という指定はユーザーが指定することが出来ます。また氏名も検索できて、含まれる文字列から検索できる。例えば「田中太郎」とあった場合に「太郎」と検索かけたらヒットするという感じがいいです。私が見つけた良いサンプルが存在しているサイトがあり、http://www.melma.com/mag/26/m00034126/a00000123.htmlで、サンプルはhttp://www.ken3.org/vba/lzh/vba093.lzhです。このサンプルがかなり近いのですが、数字を任意にユーザーが決められないことと、文字検索が無いことです。。。要らない回答は、サンプルが存在しないサイトです。あとAccess2000以外のサンプルはダメです。大変厳しい条件ですがお願いします。

●質問者: Gafu
●カテゴリ:コンピュータ 学習・教育
✍キーワード:サイト ダメ ファイル ユーザー 地域
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● kamicha1
●15ポイント

http://www.hatena.ne.jp/1074305752#

急いでます!Access2000で検索機能をつけたいのですがサンプルファイルが存在しているサイトはないでしょうか?検索機能とは、テーブルの中に「氏名」「年齢」「地域」など.. - 人力検索はてな

とりあえず急いでいるということですので、

このサンプルのPointフィールドを年齢と仮定して、

クエリ「Q_顧客情報」をデザインビューで開き、

pointフィールドの抽出条件を >=[検索したい年齢は?]

氏名フィールドの抽出条件を Like ”*” & [検索したい氏名は?] & ”*”

と設定して保存します。

Q_顧客情報クエリ実行時に、「検索したい年齢は?」「検索したい氏名は?」はと聞いてくるので、ユーザーが条件を指定するとできます。

Q_顧客情報クエリは、フォームtestmainの「クエリの実行、元データ確認」をクリックしても同様に実行されます。

http://www2.moug.net/app/bbs/thread.php?cat=acopr

Excel VBA を学ぶなら moug モーグ

もし、詳細がわからなければ、こちらでおたずねになると、さらに詳しく教えていただけると思います。

◎質問者からの返答

回答ありがとうございます。

非常に惜しいです。あと一歩なんですけど、ダイアログボックスでの表示から設定値を入れ込むのではなく、メニューの右側に入力ボックスを追加してそこに書き込んだ後にボタンを押して結果を知りたいのです。

kamicha1さんのように詳しく教えてくれればサンプルサイトじゃなくてもいいです。


2 ● reehle
●15ポイント

http://seagullclub.net/vba/vba12.htm

こちらの方法でどうでしょうか

帳票フォームのデータをフィルタするのには、

docmd.applyfilter が便利です

複数条件を組み合わせる必要がある場合は、

VBA などで、条件文を生成してあげる必要があります

詳しくは、ACCESS2000 のHELPを、applyfilter で検索してみてください

これでどうでしょうか?

◎質問者からの返答

ありがとうございます。少し参考になりました。

もっとわかりやすく、サンプルが載っているサイト教えてください


3 ● ayutetsu
●15ポイント

http://www.yahoo.co.jp/

Yahoo! JAPAN

URLはダミーです。

kamicha1さんの回答にある

Like ”*” & [検索したい氏名は?] & ”*”

ここを

Like ”*” & [Forms]![フォーム名]![入力ボックス名] & ”*”

に変えてみてください。

すると入力された値で検索されると思います。

※フォーム名:メニューのフォーム名

入力ボックス名:入力するテキストボックス名

◎質問者からの返答

書き忘れたのですが、kamicha1さんの書いた氏名の検索部分がうまく動作しません。(年齢はうまくいきました)

それと同様にayutetsuさんのも氏名がうまくいきません。

どうしてだろう・・汗


4 ● kamicha1
●15ポイント

http://homepage1.nifty.com/tsware/tips/tips_216.htm

Access アクセス Tips 500 #216 〜フォームのテキストボックスを抽出条件とするクエリー〜

上記URLが参考になるかもしれませんが、「メニューの右側に入力ボックスを追加してそこに書き込んだ」ということですので、フォーム名がtestmain、年齢入力ボックス名がTextBox1、氏名入力ボックスがTextBox2とした場合、クエリ「Q_顧客情報」をデザインビューで開き、

pointフィールドの抽出条件を >=[Forms]![testmain]![テキスト1]

氏名フィールドの抽出条件を Like ”*” & [Forms]![testmain]![テキスト2] & ”*”

と設定して保存すると、できます。

◎質問者からの返答

できました!!ありがとうございます!

ayutetsuさんも協力ありがとうございました。

まだ聞きたいことがあるのですが、テキストボックスに対して2つ項目を入れなければダメな状態ですが、どちらか片方だけ入力しても使える状態にしたいです。

たとえばpoint部分は何も入力していない状態で、名前検索にたいしてドラキチと入れる。

するとドラキチがヒットするといった感じにしたいです。

それと逆に、pointだけ入れて名前部分は空白にした状態でも検索できるようにしたいです。

VBでの使用もOKですのでご教授お願いします


5 ● ayutetsu
●15ポイント

http://localhost/

IIf関数を使用すればできます。

IIf関数の仕様は

IIf(条件式, 条件式が真, 条件式が偽)

となっていますので、pointの場合、

>=IIf([Forms]![testmain]![テキスト1] Is Null,-99999,[Forms]![testmain]![テキスト1])

このようにすれば、テキスト1が空白(NULL)の場合、-99999より大きいpointが対象となります。

(-99999の値は、全てが対象となるように適当な値に変更してください。)

また、氏名のほうは

Like ”*” & [Forms]![testmain]![テキスト2] & ”*”

これでテキスト2に入力された値で検索しますし、

空白の場合は全て対象となります。

これでいかがでしょうか?

◎質問者からの返答

汗…


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ