- ベストアンサー
検索結果をテーブルに表示
Windows2000でアクセス2000を使用してます。 フォームから検索した結果をテーブルで表示って出来るのでしょうか? もし、出来るのならどのようにして設定したら良いのでしょうか? アクセス初心者です。宜しくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
通常は車種データのキーかインデックスが付いているフィールドを抽出条件にするのが一般的です。 しかし各種要求に応じるためにはフォームフィルターを使った抽出の方がなれない人には扱いやすいと思います。抽出フォームにフォームフィルターを使って抽出条件を入力させて抽出する。見栄えはイマイチかも知れませんが表形式の抽出フォームに車種データを表示させる単票形式のフォームを開くボタンを付けておけばOKではないでしょうか。
その他の回答 (5)
- O_cyan
- ベストアンサー率59% (745/1260)
車種クエリに車種と色を指定するのならば [車種]の抽出条件に[Forms]![検索フォーム1]![車種選択] [色]の抽出条件に[Forms]![検索フォーム1]![色] で検索フォーム1の車種フィールドと色フィールド両方に入力すれば同じ様に表示されるはずです。2つ抽出条件を設定したら必ず2つのフィールドに入力しなくてはいけません。片方だけの入力では表示されません。
補足
O_cyanさん、おはようございます。 いつもすばやいアドバイス有難うございます。 出来ないって言ってましたが、2つ抽出条件を設定したら2つとも入れないと表示されないからだったんですね。 私、勘違いしてました。すいませんでした。 それだったら、普通に検索してするか、フォームフィルターを使った方が良いですよね? 全てのフォームの全てのフィールドでどんなパターンでも検索できるようにするには、他の人(全くのアクセス初心者)が検索する場合は、フォームフィルターの使い方を教えておいた方が分かりやすいかな?って思ったのですが・・・どうなのでしょうか?
- O_cyan
- ベストアンサー率59% (745/1260)
検索ボタンを受注明細として作成したクエリを車種クエリと仮定して・・・。 Private Sub 受注明細_Click() On Error GoTo Err_受注明細_Click Dim stDocName As String stDocName = "車種クエリ" DoCmd.OpenQuery stDocName, acNormal, acEdit Exit_受注明細_Click: Exit Sub Err_受注明細_Click: MsgBox Err.Description Resume Exit_受注明細_Click End Sub 車種クエリを作成したクエリの名前に変えて記述してください。
補足
いつもお世話になってます。 O_cyanさんのアドバイス通りに設定しましたが、ちょっと気になったことが・・・ クエリの作成で、車種だけではなく他にもあったので他も同じように車種クエリの時に同時に設定してみましたが作動しません。車種だけで設定したら作動してくれますが、他の「色」とかが一緒だと作動しません。 同時に同じように設定したらだめなのでしょうか? お手数かけますが、宜しくお願いします。
- O_cyan
- ベストアンサー率59% (745/1260)
複数のデータが表示されるのは問題ありません。 車種のテキストボックスに例えばベンツと入力してベンツの所有者の名前・住所・電話番号等を表示させれば・・・ ベンツ Aさん 東京都・・・ 03-1111-1111 ベンツ Bさん 神奈川県・・・ 045-111-1111 の様に表示されます。(上の例では分かりにくいかなァ?) [車種]のデータがあるテーブルを顧客データとして検索用のフォームを検索フォーム1としそのフォームの車種を入力するテクストボックスを[車種選択]として説明すると・・・。 顧客データのテーブルでクエリを選択して表示に必要なフィールドを選択します。(顧客名・住所・電話番号・車種等) そのクエリの[車種]の抽出条件に[Forms]![検索フォーム1]![車種選択]と入力して(式ビルダでも設定できます)車種抽出クエリとして保存します。マクロでクエリを開くを選択して車種抽出クエリを指定し保存します。フォーム上にボタンを作りクリック時のイベントにそのクエリを選択すれば車種を入力後そのボタンをクリックすると画面上にクエリで抽出されたデータが全て表示されます。 試しに抽出条件にフォームのフィールド名(上記で云うと[Forms]![検索フォーム1]![車種選択])が入ったクエリを作ってフォームに車種を入力してクエリを開いてみてください。画面に抽出条件にあった車種のデータが表示されるはずです。
補足
度々すいません。 O_cyanのアドバイス通りにクエリの作成は出来ましたが、フォーム上の検索ボタンのイベントの設定が分かりません。 ボタン作成したら Private Sub 受注明細_Click() On Error GoTo Err_ 受注明細_Click Screen.PreviousControl.Set Focus DoCmd.DomenuItem asFormBar,acEditMenu,10,,acMenuVer70 Exit_受注明細_Click: Exit Sub Err_受注明細_Click: MsgBox,Err.Description Resume Exit_受注明細_Click ってイベントプロシージャには表示されてるのですが、ここに設定するのでしょうか? ご迷惑お掛けしますが宜しくお願いします。
- O_cyan
- ベストアンサー率59% (745/1260)
フォームで検索した結果をテーブルで表示とは?画面上でそのように見えればいいのでしょうか? 画面上で表示するとして・・・。 簡単なのはフォームで検索する抽出条件を使ってクエリを作成して、フォーム上のボタンでそのクエリを表示するようにすればボタンをクリックした時画面上にクエリがテーブルの様に表示されます。
補足
アドバイス有難うございます。twingoです。 フォームで検索したので複数の回答があった場合どうなるのかな?って思ったので・・・ 画面上で見れるようにクエリを作成するにはどの様に組めば良いのでしょうか? もし、車種のテキストボックスに車種を入れて検索すると その車種の顧客が一覧で表示されるようにするには・・・(そのような事は出来るのでしょうか?) 全くの初心者で、本を読んでも分かりません。 ご迷惑お掛けしますが宜しくお願い致します。
- glimlach
- ベストアンサー率36% (14/38)
フォームの元データがクエリーかテーブルかによって異なります。 「テーブル作成クエリー」というのがありますが、どのようにDBを作成しているかがわかりませんので、詳しく案内することは難しいです。 まずはヘルプを見てみてください。 フォームからいきなりではなく、始めにテーブル作成クエリーで試すのがよいでしょう。
補足
おはようございます。 度々アドバイス有難うございます。 フォームのツールバーからフォームフィルタのボタンがあるけど、検索ボタンをクリックしたら直接フォームフィルタを開くように設定するにはどのように設定すれば良いのでしょうか? 出来れば、イベントの設定の場合でも設定できるのならそちらで教えて下さい。 宜しくお願いします。