• ベストアンサー

access2003

テーブル T-メーカー  メーカーNo.、メーカー名 T-商品名   メーカーNo.(lookup T-メーカー)、商品No.、商品名 フォーム F-納品 F-納品サブ があり、納品がメインフォームになっていて、その中に納品サブが表示されています F-納品サブの入力時、メーカーNo.を選ぶと商品No.はメーカーNo.に属する商品だけが表示されるように制限をかけたいのですが どのようにすればよいのでしょうか? F-納品サブのメーカーNo.、商品名はコンボボックスでクエリになっています よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

納品、納品サブのソースの情報がありませんが 商品Noフィールドのコントロールをコンボボックスにし 値集合ソースをT-商品名から作ったクエリにし メーカーNoフィールドの抽出条件欄にフォームのメーカーNoフィールドを指定し メーカーNoの更新後イベントで商品Noコンボボックスを再クエリします

rikoriko15
質問者

お礼

ありがとうございます 抽出条件に悪戦苦闘ですが 頑張ってみます ご回答ありがとうございました

関連するQ&A

  • アクセスフォームについて教えて下さい。

    アクセスフォームについて教えて下さい。 テーブル T_設備 設備管理No. 状態ID(フィールドプロパティ→コンボボックス) 分類ID(フィールドプロパティ→コンボボックス) 設備名 (その他項目あり) T_状態 ID  001  稼動中 002  停止中 T_分類 ID 001  専用機 002  マシニング T_設備、T_状態、T_分類はリレーションシップを組んでいます。 クエリ T_設備を元にクエリを作成 Q_設備 (全データを表示) 稼動中の設備を抽出 Q_稼働設備 停止中の設備を抽出 Q_停止設備 フォーム Q_稼働設備を元にフォームを作成 F_稼働設備一覧(表形式) Q_稼働設備を元にフォームを作成 F_稼働詳細(単票形式) 表形式のフォーム(F_稼働設備一覧)にコマンドボタン(コマンド1)を作成、 OPENFORMメソッドでクリックした行のデータを表示させるようにしました。 (単票形式のF_稼働詳細でデータの詳細を確認したい) Private Sub コマンド1_Click() DoCmd.OpenForm "F_設備詳細" Forms!F_設備詳細!設備管理No. = Forms!F_稼働設備一覧!設備管理No. End Sub しかし、コンボボックスの内容を変更(稼動中から停止中へ)し、フォームを閉じ、 再度F_稼働設備一覧を開くと、データがQ_停止設備へ移動しておらず、 コンボボックスも稼動中に戻ってしまっています。 コマンド1ボタンからではなく、直接F_設備詳細を開き、コンボボックスの停止中を 選択した場合は、データはQ_停止設備へ移動します。 OpenFormメソッドの記入に問題があるのでしょうか? 色々と試しましたが、解決できませんでした。 よろしくお願いいたします。   

  • ACCESS 2007で帳票フォームで絞り込み

    はじめまして、ACCESS初心者なのですが、困っています。 商品マスターというテーブル(商品ID、メーカー名、品名、型式)があって、見積フォームの サブフォームの見積詳細フォーム中で、メーカー名、品名、型式をコンボボックスで選択できるようにしており、以前見積もりしたことのある商品をメーカー名、品名、型式をコンボボックスでテーブルから 絞り込みをしながら参照してくるようにしたいのですが、テーブル内にあるレコードと同じものを 選ぶと新しくレコードが追加されてしまいます。同じ場合は追加したくないのですがどうしたら良いのでしょうか? レコードソースはクエリQ_見積詳細で、  見積詳細テーブル(見積No、注文No、数量、単価、商品ID)と商品マスター(商品ID、メーカー、  品名、型式)を商品IDでくっつけているものです。  コンボボックスは3つあって、  1つ目のメーカーCoのコンボボックスはコントロールソース メーカー  値集合ソースはクエリでQ_メーカー  Q_メーカーは商品マスターのテーブルで  フィールド・・メーカー テーブル・・商品マスター 集計・・グループ化 表示・・ON  フィールド・・品名 テーブル・・商品マスター 集計・・グループ化  表示・・OFF フィールド・・IIf([Forms]![見積データフォーム]![見積データフォーム詳細]![品名IDCo]         _Is Null,True,[商品マスター]![品名]=[Forms]![見積データフォーム]! _[見積データフォーム詳細]![品名IDCo]) テーブル・・なし 集計・・グループ化  2つ目の品名IDCoのコンボボックスはコントロールソース 品名  値集合ソースはクエリでQ_品名  Q_品名は商品マスターのテーブルで  フィールド・・品名 テーブル・・商品マスター 集計・・グループ化  表示・・ON  フィールド・・メーカー テーブル・・商品マスター 集計・・グループ化 表示・・OFF  フィールド・・IIf([Forms]![見積データフォーム]![見積データフォーム詳細]![メーカーCo]         _Is Null,True,[商品マスター]![メーカー]=[Forms]![見積データフォーム]! _[見積データフォーム詳細]![メーカーCo]) テーブル・・なし 集計・・グループ化  3つ目の型式Coのコンボボックスはコントロールソース 型式  値集合ソースはクエリでQ_型式  Q_型式は商品マスターのテーブルで  フィールド・・型式 テーブル・・商品マスター 集計・・グループ化  表示・・ON  フィールド・・品名 テーブル・・商品マスター 表示・・OFF          抽出条件 [Forms]![見積データフォーム]![見積データフォーム詳細]![品名IDCo]  フィールド・・メーカー テーブル・・商品マスター 表示・・OFF          抽出条件 [Forms]![見積データフォーム]![見積データフォーム詳細]![メーカーCo]   上記でやると、絞りこみはできるのですが、型式で同じものが2個表示されたり、レコードが新規  で追加されてしまいます。  よろしくお願いします。

  • Access vba 教えてください。 初心者です

    以下のような テーブルT_ソフトリスト、テーブルT_ソフト フォームF_入力 があったときに、フォームの使用者のコンボボックスに入力をしたときに、 T_ソフトから使用者を探して、ソフトリストIDを取得し、そのソフトリストIDを元にT_ソフトソフトのソフト名をフォームのコンボボックスに表示させるようにしたいのですが、 どの様なソースコードを書けばよいでしょうか? 「T_ソフトリスト」←テーブル ================================== ID  | ソフト名 | ────────────── 1   | A |  2  | B |  3  | C |  4  | D |  5  | E |  ================================== 「T_ソフト」←テーブル ================================== ID |ソフトリストID | 使用者 | ─────────────────── 1 |  4     | 佐藤  | 2 |  2     | 鈴木  | 3 |  5     | 斉藤  | 4 |  1     | 佐藤  | 5 |  3     | 田中  | ================================== 「F_入力」←フォーム ================================== 使用者  [コンボボックス]←Combo_UserType ソフト名 [コンボボックス]←Combo_User ==================================

  • アクセスである文字を含む検索

    ACCESS2000を使っています。 あるデータテーブル「発注書テーブル」があって、ここでは「(1)ID」「(2)顧客名(法人)」「(3)発注商品」「(4)納品済チェック」の4つフィールドがあるとします。 作業はフォームで行います。フォーム名は「発注書フォーム」。 「(2)顧客名」から検索をかけたくて、検索コマンドボタンをつくり、「検索フォーム」を発注書フォームとまったく同じ形態でつくり、そこにとべるようにしました。 「検索フォーム」には「検索」というテキストボックスを作ります。 「検索クエリ」というクエリを作り、発注書テーブルを素とし、すべてをデザインビューで表示するようにしました。 そして、「(2)顧客名」の抽出条件に[Forms]![検索フォーム]![検索]を入力します。 すると、「検索フォーム」の「検索」をコンボボックスにして、顧客名をすべて表示させ選択した場合は、「検索フォーム」では、選択した顧客の情報が表示されるようになりました。 が、しかし、「検索」をコンボボックスではなく、テキストボックスで、しかも顧客名の一部だけを入力したら、その文字を含むすべてのレコードを表示してほしいのです。 そこで、「検索クエリ」の「(2)顧客名」抽出条件にlike"*[Forms]![検索フォーム]![検索]*"と入力してみました。 そして「検索フォーム」の「検索」テキストボックス(非連結)に顧客名の一部を入力したところ、ぜんぜん絞りこみ抽出してくれません。 もちろん、クエリ上でも絞り込んでいない模様です。 どうしたら文字の一部からその文字を含む顧客名のレコードを全て抽出し、表示させることができるでしょうか? 細かくてすみませんが、かなり困ってます。 どうかわかる方、教えてください。 まったくちがう方法(別の手法)でもかまいません。 この説明でわからない部分がありましたら補足しますのできいてください。 よろしくお願いします。

  • Accessデータ並べ替えをハイブリッドにしたい

    [使用しているツール] Access 2007 PROFFESSONAL [やっていること(現状)] 1つのテーブルで複数のクエリ(複数のフィールドの並べ替えが必要な為)と複数(クエリと同数)のフォームを作成して、フォームの数だけコマンドボタンを作成してフォームを一覧表示で開いています。 [やりたいこと] 1つのテーブルで「1つのクエリ」による複数のフィールド(名)を切替えて、「1つのフォーム」で表示(一覧)させたいと思っています。 例えば、テーブル名:顧客名簿(取引先、県名、商品名、入庫日)、クエリ名:顧客名簿クエリ、フォーム名:顧客名簿一覧としたとき、(取引先、県名、商品名、入庫日)をコンボボックス等で切り替えることで、指定したフィールド(名)で並び替えられたデータを「フォーム名:顧客名簿一覧」に表示させられないでしょう。 [考えたこと] コンボボックス(名前:コンボ1)を作成し値集合ソースに「”取引先”;”県名”・・・・。」と入力、クエリ「顧客名簿クエリ」の抽出条件欄にビルダを起動させて「・・・コンボ1」を指定、フォーム「顧客名簿一覧」のレコードソースにクエリ「顧客名簿クエリ」を選択しました。しかし、フォーム「顧客名簿一覧」を開いても、データは抽出できずデータなしの表示で先へ進めていません。 以上ですが、宜しくお願いします。

  • アクセス初心者です。(クエリについて)

    クエリでテーブルとテーブルをくっつけたいと思います。 T_MAIN→商品コード、商品一連番号、管理部門、統括責任者、マネージャー、担当者、保管場所、保管方法とあります。管理部門、保管場所、保管方法については小テーブルを作りました。それを元にT_MAINにてコンボボックスで項目一覧から選べるように作りました。統括マネージャ、マネージャー、担当者についてはT_名簿からこれも同様にコンボボックスで選べるように作りました。一つのフォーム内に非連結のテキストボックス(入力画面)と参照画面みたいな感じで、T_MAINに入っている情報一覧を並べて表示したいのです。T_MAINはコードで管理している部分が多いのでリストに表示する内容はクエリから引っ張ってくるようにしました。コンボボックスで表示がされるように、リストボックスの中に列幅2cm;3.808cm;3.808cm;2.508cm;4cm;2.503cm;等と指定して、値集合タイプにテーブル/クエリ、値集合ソースにクエリ名として表示するようにしました。管理部門、保管場所、保管方法はT_MAINと各小テーブルでリレーションを結びました。統括責任者、マネージャー、担当者については、一つのテーブルT_名簿とリレーションと結ぶと、クエリの内に入っているデータが消えてしまいます。リレーションをはずすと、3件しか入れていないものが、123、123、123と件数が増えていきます。解決策はないのでしょうか??宜しくお願いします。

  • アクセスのフォームのコンボボックスに表示させる対象をユーザーNo. で絞りたいのですが、どうすればよいでしょうか?

    Access2003を使用しています。 フォームに配したコンボボックスのことで教えてください。 フォームには、ユーザーNoを入れるテキストボックスがあります。 その下にはユーザーが所有している商品番号を入れるコンボボックスがあります。 ユーザーナンバーを手打ちで入力すると、商品番号のコンボボックスにはそのユーザーが所有している番号だけが表示されるようにしたいのです(商品番号は1000個ぐらいあります)。 ユーザーが所有している商品番号は、商品リストと顧客名簿というテーブルを連結させたクエリで出来上がっています。 どのようにしたらよいのでしょうか? ご教示をお願いいたします。

  • Accessのフォームについて教えて下さい

    Access 2010のフォームについてお教え下さい。 テーブルにはテーブル名T1、フィールド「ID」、「Price」というテキストボックス。2フィールドがあります。 テーブルの各データは、 ID,Price 001,100 002,200 003,300 フォームにはにフォーム名F1、「cmb」というコンボボックスと、「price」というテキストボックスが配置されています。 「cmb」のデータは値集合ソースで、「SELECT T1.ID FROM T1;」と指定しています。 「cmb」で選択したデータのプライスを「Price」テキストボックスに表示したいと思います。 例えば、「001」を選択したら、「100」と表示されるようにしたいと思います。 色々調べているのですが、どうやってやるのかわかりません。どのように実現したらよろしいでしょうか? よろしくお願いいたします。

  • Access2010についての質問です。

    アクセス「超」初心者です。 あるクエリ上のデータを検索(抽出?)して、フォームに反映させたいのですが、基本的なところで躓いております。 クエリ【Q基本データ】にあるフィールドは [階] [場所] [物] です。 [階][場所]は、別にテーブルがあり、そこから選ぶようになっています。 (→【T階テーブル】【T場所テーブル】) このクエリを基に作成したフォーム【F基本データ】上で、検索を行いたいのです。 フォーム【F基本データ】のヘッダー部分に、 テキストボックスを2つ[階検索][場所検索]と ボタンを1つ[検索] それぞれ配置し検索を行えるようにしたいのですが・・・ (テキストボックスはそれぞれ【T階テーブル】【T場所テーブル】からコンボボックスで選ぶようにしています) [検索]ボタン > プロパティシート > イベント > クリック時 の埋め込みマクロにアクション「フォームを開く」を入力していけば良いのでしょうか??? テキストボックスが2つだとマクロでは無理とか??? テキストボックス1つにつき、ボタンを1つ配置したら良いのか??? ご教授いただけましたら幸いです。

  • access,フォームで最新のコンボ内容が反映不可

    フォーム入力時、顧客や商品データが無い場合、フォームを開いたままで、そのテーブルを開き、顧客や商品データを入力、閉じます。 フォームでは、顧客や商品データはコンボボックスで選ぶ用にしていますが、それにテーブルに新たに入力したそのデータが出てきません。 フィールド→更新、やフォームを閉じ開きすれば、現れます。 これを、例えばボタンを作成し、テーブルにデータ追加後、ワンクリックで、フォームのコンボボックスに新入力データを反映させるにはどうすれば良いのでしょうか(SQLの方が良いか?)。 また、フォームのコンボボックスのデータは、フォームを開いた時のテーブルやクエリのデータそのままで、コンボボックス選択時に再読み込みなどはしないのでしょうか? 正確にはコンボボックスのデータは順の関係でクエリで整順させたものです。 access2000でwindows2000です。 宜しくお願いいたします。

専門家に質問してみよう