• 締切済み

アクセスのテーブルとフォームのリンク

アクセスのテーブルにコンボボックスのルックアップ機能を使って、データに緋もづくIDの値を入力しています。例えば、1:玩具、2:生活雑貨などのデータで、テーブル上には玩具、生活雑貨などの値が表示されていますが、キー項目としては1,2のID値が使われています。 この項目をフォームで表すと、フォーム上には玩具、生活雑貨などの値ではなく、ID値1、2などが表示されてしまいます。フォームで選択しなおしてあげると、その値は正常に保存されテーブル側にも玩具、生活雑貨などの値が正しく表示されています。 テーブル上、フォーム上ともにID値ではなく、項目値(玩具など)を表示するようにしたいのですが、これはどこかの設定が間違っているのでしょうか。 ご存知の方教えていただけないでしょうか。

みんなの回答

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

ちょっと分かりにくいのですが・・ コンボボックスで1:玩具と選択しても玩具ではなく1と表示されてしまうと言うことなのでしょうか。 通常データベースを構築する時に1:玩具・2:生活雑貨などのデータをマスタテーブルに置き入力データを蓄積するテーブルにはIDの1や2を持たせテーブルのIDでマスタから玩具などのフィールド値を持ってきて表示させるのが普通ですが・・。 コンボボックスのコントロールソースは合っているのでしょうか?コンボボックスを作った時に選択したデータの保存先の指定はどのようにしたのでしょうか。 テーブルのフィールドがID・区分(玩具などの分類)があるとして フォーム上に区分のテクストボックスを配置しコンボボックスでIDと区分の2つを表示させてコンボボックスにはIDを保存し区分にコンボボックスで選択したIDの区分を更新後処理で表示させ保存させることも出来ます。

関連するQ&A

  • 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」と表示されるようにしたいと思います。 色々調べているのですが、どうやってやるのかわかりません。どのように実現したらよろしいでしょうか? よろしくお願いいたします。

  • Accessのフォームとテーブルについて教えてください。

    Access2003を使用しています。 既存のフォームAにフィールド3個を増やしました。 フォームAはテーブル(1)と連動していました。 追加したフィールドはテーブル(6)のものです。 ところがフォーム上で追加フィールドに入力が出来なくなりました。3フィールドのうち、ひとつはコンボボックスです。表示はされますが確定ができません。 フォームAのSQLステートメントではテーブル(1)・(6)以外にテーブル(2)・(3)・(4)・(5)が結合されています。 フォームAからするとテーブル(2)・(3)・(4)・(5)のデータはIDの名称を見るための参照用です。 テーブル(6)は、追加フィールドのコンボボックスが参照用で、他の2追加フィールドは、フォームから入力してテーブル(6)に反映させたいものです。 テーブル(6)の画面では入力できます。 フォーム上からは入力できません。 設定が何か欠けているからでしょうか? 他の質問では2つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • フォームからテーブルへの保存

    Access2000を使っていますが、初心者です。 まず、フォームを作成し、コンボボックスでテーブル1からデータを取ってきて表示させています。そのコンボボックスに表示させているデータをテーブル2に保存したいのです。 コントロールソースで指定するとコンボボックスからテーブル1のデータを選択できません。これは何がおかしいのでしょうか。そもそもテーブル1のデータをフォームからテーブル2に保存するということはできないのでしょうか。保存させる方法がありましたら教えて頂けませんでしょうか。 困っております。できれば分かり易く教えて頂けないでしょうか。

  • Accessのフォームについて

    Accessで、テーブルへのデータ入力を簡易化するための、フォームを作成しています その中で、コンボボックスのなかから項目を入力したら 別に用意されているテーブルから 一致する項目をテキストボックスに 自動的に値を入力できるようにしたいのですが、 どのようにしたらいいのか、わかりません。 ~フォームに入力する項目~ 氏名、年齢、地区(コンボボックス)、地区コード、地区番号、住所、電話番号  等 ~地区テーブル~ 地区コード、地区、地区番号 調べてみたところ、プロパティのコントロールソースというところで、 値を持ってくるための式を作成するということでしたが・・・ 実践してみたのですが、初心者ゆえ、あまりよく理解できませんでした どうかよろしく御願いします。

  • Access コンボボックスの複数選択

    Access2007を勉強中の初心者です。 「空白のフォーム」から作成したコンボボックスで、複数選択が可能になるような設定はありませんか? テーブル項目の「ルックアップ」「複数の値を許可」を許したテーブルから作成したフォームでは、コンボボックスで複数の値を選択可能になりますが、「空白のフォーム」から作成した場合にはできないのでしょうか。 リストボックスではスペースをとってしまう為、コンボボックスで行いたいです。 言葉足らずな内容かもしれませんし、大変お手数をおかけしますが、よろしくお願いいたします。

  • 元のテーブルはいじらずフォーム上のみで表示形式を変

    アクセスのフォームにコンボボックスを作り、値集合ソースにテーブル日付型のフィールドを指定し、 値集合タイプをテーブル/クエリにしてあります。 そのコンボボックスには問題なくデータは表示されるのですが、 コンボボックスに表示する日付の形式を、yy/mm/dd形式で表示させたいのです。 コンボボックスの書式をyy/mm/ddにしてみましたが、 yyyy/mm/ddのままです。 元のテーブルのデザインビューでフィールドの書式をyy/mm/ddにしたら、 連動してフォームのコンボボックスもyy/mm/ddになりましたが、 元のテーブルはいじらずフォーム上のみで表示形式を変えることは不可能なのでしょうか? よろしくお願いします。

  • アクセスのVBAなんですけど

    アクセスのVBAでフォームからフォームへ値を渡すことはできますか?具体的にいうとあるフォームでコンボボックスから選択し、OKボタンで次のフォームを開くのですが、初めのコンボボックス(ちなみに5つ選択項目があります)で選んだ条件でフォームの表示内容を変更させようと思っています。 今のところ、選択した項目を一時的にテーブルに保存して、新しいフォームが開くときにテーブルから値を取得してやるのか・・・・と考えているのですが、まどろっこしいので・・・・・よろしくお願いします。

  • Access2010でフォームロード時に表示したい

    アクセス2010で、職場テーブルの情報を表形式でフォームに表示しています。例として以下とします。 職場テーブル ID、社員ID、職場、住所・・・ 社員テーブル 社員ID、名前、年齢・・・ そこで、コンボボックスを使い、社員テーブルをリスト化して選択できるようにしています。 コンボボックスには、値集合ソース(SELECT [社員テーブル].[ID],[社員テーブル].[名前] FROM [社員テーブル])を使い、IDと名前を一覧で表示しています。 このようなフォームがあった時に、フォームを読み込んだときに、このコンボボックスのとなりのラベルに、社員IDに該当する名前を表示したいと考えていますが、どのようにしたらよいでしょうか? Me.社員名.Caption = Nz(Me.社員リスト.Column(1)) このようにしても、レコード件数分を繰り返してくれるわけではないようなので、悩んでおります。 解決策をご存じの方はよろしくお願いします。

  • 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、教えてください。

    顧客データテーブル(ID・Name)とトータルデータがあります。 フォーム(トータルデータテーブル)内のコンボボックスで顧客データを選択して入力するのですが、その時、フォーム上では名前を表示し、テーブルにはIDで保存したいのです。できますでしょうか?どのようにしたら良いのでしょうか?教えてください。よろしくお願いいたします。