• 締切済み

複数テーブル、または、フォームからの曖昧検索

お世話になっております。 今、業務でACCESSを使ってデータベースを構築しているのですが、検索の部分で分からなくなりました。 それは複数のテーブル「テーブル1」「テーブル2」「テーブル3」とあった場合に、それぞれのテーブルに存在する「電話番号」フィールドを検索して、ヒットしたものを抽出するといった処理です。 また、上のテーブルにはそれぞれフォームも存在しております。 おそらく、各テーブルをループか何かでまわして、ヒットしたら表示という感じで処理をさせるのだとは思うのですが、プログラミングの方をどうしたらいいのか分からなく困っております。 どなたか、ご教授くださいませm(_ _)m

みんなの回答

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

>それは複数のテーブル「テーブル1」「テーブル2」「テーブル3」とあった >場合に、それぞれのテーブルに存在する「電話番号」フィールドを検索して・・ とありますが1回の検索で「テーブル1」に無ければ「テーブル2」の電話番号を 検索し、無ければ「テーブル3」の電話番号を検索すると言うことですか?

hunnbaruzo
質問者

補足

早速のお返事ありがとうございます。 o_cyanさんのおっしゃるとおり、まさしく私がしたいことはそれです。 一つのテーブルですと問題ないのですが、複数テーブルがあるために困っています。 ACCESSでこのような1回の検索で「テーブル1」に無ければ「テーブル2」の電話番号を 検索し、無ければ「テーブル3」の電話番号を検索するということは可能なのでしょうか? よろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

どこまでわかっていらっしゃるかが文章から読み取れないので、あいまい検索の方法だけ。 あいまい検索には、LIKE演算子を使用してレコードを抽出します。 たとえば、先頭が03の電話番号のレコードだけ抽出するのであれば、 電話番号 LIKE "03*" のように条件に記述することで実現できます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Access、検索用フォームでのあいまいな検索

    現在、Accessでデータベース作成をしています。 テーブル:  ・テーブルA          ・テーブルB          (A・B間にリレーションシップ設定) クエリ    ・検索クエリ(テーブルA・テーブルBを元に作成) フォーム   ・検索用フォーム(デザインビューでフォーム作成より)          ・検索結果フォーム(検索クエリを元に作成) また、以下のような設定を入力しました。 「検索クエリ」の抽出欄  Like "*" & [Forms]![検索用フォーム]![検索したい名前] & "*"・・(1)  ※検索したい項目、すべての抽出欄に設定済 「検索用フォーム」  検索実行ボタンを作成し、マクロを設定  ・フォームを開く→「検索結果フォーム」  ・フィルタ→「検索クエリ」 上記の設定により、検索用フォームに検索文字を入力することで、その結果を「検索結果フォーム」に反映することができました。 ただ、テーブルAが元になっている項目の抽出欄のみに(1)を入力すると、うまくいくのですが、テーブルBが元になっている項目欄にも (1)を入力しようとすると、検索用フォームからうまく検索することができなくなります。 2つのテーブルを元にしたクエリからは、検索用フォームをつかった複数のOR検索はできないのでしょうか?? ご存知の方、ぜひ教えてください。 よろしくお願いいたします。

  • access2010 検索用フォームの作成について

    はじめての投函になります、よろしくお願いいたします。 access初心者です。ただいま勉強中&試作品作成中です。よろしくお願いします。 VBAは全くわかりません。 テーブルから、1つのフィールドに対して複数の値を検索、抽出できるフォームを作りたいのですが、どうすれば良いのやら、全くわかりません。 パラメータでは1つしか検索できないですし・・・。 例)IDフィールドで複数のNOを選択し、一覧でリストのように表示したい ID   1 5 10 20 34 という感じで!!一覧のリストを作りたいのですが。 お見苦しい質問だと思いますが、よろしくお願いいたします。

  • Acccessで2つのテーブルから1つのフォームをつくりたい

    お世話になります。 初心者です。Access2002を使っています。 AとBの2つのテーブルから1つのフォームをつくることはできますか? フォームウィザードでAとBのテーブルのフィールドを指定してフォームを作成しようとすると、「A.Bテーブルのフィールドを選択しましたが、このうち1つまたは複数のテーブルが他と関連ありません...」というエラーメッセージが出ます。 解決策がありましたらよろしくお願いします。

  • 複数のテーブルの検索について

    お世話になっております。 題名にありますように、複数のテーブルに登録のあるデータを、テキストフォームやチェックボックス、プルダウンなどのフォームで入力(選択)されたものを(PHPにて)検索したいと考えておりますが、googleなどで調べていても、キーワードが適切でないためか、得たい情報を得られずにおります。 以下のようなテーブル構成で、上記質問のような検索をする場合、(googleなどで検索するには)どのようなキーワードが適切でしょうか?ソースを教えていただくのが簡単ですが、理解を深めたいと考えての質問です。お忙しい中恐縮ですが、アドバイスのほど宜しくお願いいたします。 table_a id name address category table_b no id title subject 上記テーブルA、Bに設定されたフィールドを、各フォームににて入力(選択)されたフォームで一括で検索するソースを学びたいのです。 ※table_a と table_b にある id で紐付けています。

  • 複数テーブルの検索につてい

    Accessの業務で非常に困っています。 元々はテーブル設計のミスにあるのですが・・・ 現在50営業所程の顧客データがあるのですが、管理が1営業所毎に1テーブルなのです。 全てのテーブルから、今回東京都に住んでいるお客様のみを抽出したいのですが、 1テーブルづつクエリで見るのはとても面倒です。複数テーブルを簡単に調べる方法はありますか? また、今後の運用も考えてこれらのテーブルを1テーブルにしたいのですが、どのようにすればいいでしょうか?

  • テーブルからレコードを(在れば)検索し、更新する

    テーブルから、指定したレコードを検索し、(存在すれば)フォーム表示し、変更・更新できるようにしたい。存在しない場合は、その旨メッセージを表示し、処理を終える。 レコードの指定は、一意の正数値が入っているnoフィールドを用います。 スタンダードな質問で、初歩的かもしれませんが、悪戦苦闘しています。 Accessだけでは無理でしょうか? VBAでやれるでしょうか? 単体のAccessでは何がやれないのかが、よく分かっていないのです。だれか、HELP!

  • ACCESSの複数フィールドの検索

    私がしたい事はおそらくかなり初歩的なことと類推されますので、がっくりされないようにお願いします。 「報告書」のテーブルがあります。 その報告書のフィールドは 報告日 報告者氏名 A店の感想 B店の感想 C店の感想 となっていると考えてください。 このテーブルをもとに、表形式で一覧の出るフォームを作っており、この一覧のフォームフッターにテキストボックスがあります。 このテキストボックスに例えば「D商品」と入力してエンターを押すと「A店の感想 B店の感想 C店の感想」中に「D商品」が出てくるレコードすべてが抽出されるというようにしたいと思っています。 1つのフィールドでのやり方がとあるサイトにあったので、私は Private Sub テキスト28_AfterUpdate() Me.Filter = "A店の感想 like'*" & Me!テキスト28 & "*'" Me.FilterOn = True End Sub という式を作成しました。 これだと「A店の感想」フィールドにキーワードがあればヒットしますが、B店、C店にキーワードがあってもA店にキーワードが無ければ反応はありません。 これを3つのフィールドで出来るようにいくつか試してみましたがどれも失敗でした。 どのようにすれば、複数フィールドのキーワード検索・抽出が出来るのでしょうか。 私の取ったやり方に近いもの、別の全然違うやり方、ともに勉強になるので色々教えてください。 それと、これでも結構検索したのですが、検索ワードが不適切なのか、ありそうなニーズにも関わらずぴったりくるものを見つけられませんでした。 もしよければACCESSをわかりやすく学習出来るサイトを教えてください。有名そうなところをいくつかは知っております。

  • Access フォーム 複数キーワードでのOR検索

    クエリQ-TESTには商品名というフィールドがあります。 商品名フィールドの抽出条件には Like "*" & [Forms]![F-search]![商品検索] & "*"と設定しています。 フォームF-searchにはテキストボックスを配置し、名前を商品検索としています。 また、コマンドボタンにて検索の実行ボタンを配置しています。 これを複数キーワード(or検索?)で結果を返したいと思っております。 検索するのは商品名フィールドのみで、キーワードの数は日によって違います。 調べたのですがVBAでの書き方などしかヒットせず 今の私の理解では内容が追いつけません。 http://accessclub.jp/bbs3/0070/superbeg26090.html 作業環境は、OS:Windws7、使用ソフト:Access2003です。 どのように設定すれば複数キーワードでの抽出が可能になるか お力添えいただけますようお願い申し上げます。

  • 複数のテーブルをつなげる

    (SQLデータベース)同じフィールド構成になっているテーブルを複数つなげて、あたかも一つのテーブルのようにすることは可能ですか?  SQLでビューみたいなのを作ったり、直接Reportingソフト上の関数(VB)で作ったりしたいです。    目的は、CrystalReport(Reportingソフト)で、リンク関係のない3つのテーブルをリストし、検索できるようにする、です。  質問が分かり難いかもしれませんが、もしお分かりになる方があれば教えてください!

  • Access2000で複数の検索項目を作りたいのですが・・・

    こんにちわ。 今、Accessで社員録を作成しているんですが、複数の検索について教えて下さい。 ■テーブル テーブル名:社員録 フィールド名:ID・検索名・氏名・所属ID・所属 ■クエリ クエリ名:社員録クエリ フィールド名:ID・検索名・氏名・所属ID・所属 検索名抽出条件:検索名フィールド: Like [Forms]![社員録 縦]![けんさく]         所属フィールド: Like [Forms]![社員録 縦]![抽出検索名] ■フォーム フォーム名:社員録フォーム:テキスト1・テキスト2・ボタン1       社員録サブフォーム:データソース:社員録クエリ テキスト1:所属を入力 テキスト2:検索名を入力 ボタン1:マクロの再クエリを実行する ■ここからが質問です■ (1)テキスト1又は、2が空白のとき社員録全体から検索かフィルタ。 (2)テキスト1・2が、入力されてる時、両条件から検索かフィルタ。 をしたいのですが、何かいい方法がありましたら教えて下さい。 説明が、長くなってしまってスミマセン。。。