フォーム頭文字でドロップダウン 生徒名を選択してデータ表示

このQ&Aのポイント
  • フォームを使用して、頭文字を入力するとその頭文字の生徒名がドロップダウンで表示されます。生徒名を選択すると、上のフォームにその生徒のデータが表示されます。
  • サブフォームの生徒名はテーブルと連結していますが、VBAとフォームのドロップダウンを結びつけることができません。
  • この問題を解決するために、VBAのコードを使用して、ドロップダウンの選択された生徒名に基づいてデータを表示するようにプログラムする必要があります。
回答を見る
  • ベストアンサー

access フォーム 頭文字でドロップダウン

accessを勉強中です。 2003で動かします。 テーブルは、 ID 生徒コード 頭文字 生徒名 委員会 行事名 出欠 というフィールドです。 これをフォームで      ID 生徒コード 生徒名   委員会 行事名 (○出席 ○欠席)←オプショングループ という形にしました。 このとき、頭文字を入力すると、その頭文字の生徒名がドロップダウンで表示され、生徒名を選択すると、上のフォームにその生徒のデータが表示されるように、サブフォームをつくりたいのです。   (テキストボックス)  (頭文字)     (生徒名)        ↑         ↑         ↑    ここに「あ」といれたら、ここが「あ」になり、頭文字フィールドが「あ」の生徒名をドロップダウンで表示する。    さらに、生徒名をクリックしたら、フォームにクリックされた生徒名のデータを表示する。 サブフォームの生徒名はテーブルと連結していますが、vbaとフォームのドロップダウンを結びつけることができません。 どなたか、ご教授お願いいたします。

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

  • ベストアンサー
  • chayamati
  • ベストアンサー率41% (254/607)
回答No.1

レコードをキーワードで絞り込むには フォームを開く前にキーワードが確定している必要があります。 そこで自分はメニュー(フォーム名です)を別に作成し ここから目的のフォームを開きます。 ・メニューフォームに テキストボックス[頭]を配置 ・目的のフォームクエリーの頭文字との対応は [forms]![メニュー]![頭] とします。(添付参照) 尚失礼ですが、ExcelのデーターをAccessのテーブルに取り込んで そのままフォーム設計に取り掛かりましたね? Accessにはデータ処理を効率よく設計、運用するため作法があります。 テーブルは次のように固定的なテーブルと常に追加する テーブルに分けます 1.T-生徒マスタ ・生徒ID(オートナンバー) ・生徒コード ・生徒名 ・フリガナ 2.T-行事マスター ・行事ID(オートナンバー) ・行事名 ・委員会 3.出欠記録 ・出欠ID(オートナンバー) ・行事ID(長整数) ・生徒ID(長整数) ここにT-生徒マスタのルックアップを設定 ・出欠予定(○出席 ○欠席) ・出欠実績(○出席 ○欠席) 目的のフォームは[頭]変更イベントから開きます。 追伸 ACCESSにはファイルを開いたとき特定のフォームを開く 設定が出来ます。 Access2010では[ファイル]→[オプション]→[カレントデータベース] →[アプリケーションの参照] Access2003では確か[表示orツール]コマンドから「オプション」に入ったと 以下も少し表現違ったと思います。

関連するQ&A

  • Accessのフォーム解析

    業務の関係上、作成者がいないAccess2000の フォームの解析をしています。 (マクロやモジュールがありますが、 どこを見ればいいのか分からない状況です) フォームの機能ですが、 ドロップダウンから項目を選択すると、 ドロップダウンにフラグ番号と テキストボックスに項目名が表示されるものです。 フラグ番号と項目名はテーブル1に登録 されています。 テーブル1のフラグ番号と項目名と 追加すれば、フォーム上で表示されると 思うのですが、表示されません。 表示させるには、どのようにすれば良いの でしょうか? 抽象的になってしまい、申し訳有りません。

  • access 2007 のフォームの日付について

    access 2007 のフォームの日付について こんにちは さっそくですが質問させていただきます 立山秀利さん著の「ツボとコツがゼッタイにわかる本」で access2007の勉強をはじめたのですが、 二つのテーブル、 「注文履歴」  【フィールド:注文ID(主キー)、商品コード、個数】と、 「商品マスター」【フィールド:商品コード(主キー)、商品名、単価】を作成し、 商品コードを結合フィールドとして、リレーションを作ったのですが、 注文履歴のテーブルに、フィールド「日付(受注した年月日、書式は日付s )」を追加して、 作成→フォーム→その他のフォーム→フォームウィザードで、 この二つのテーブルから、by注文履歴のフォームを作成したのですが、 注文履歴のテーブルでは正しく日付が表示されていたのですが、 フォームの日付では#が十個ぐらいならんで、表示されてしまいました フォームでも日付が正しく表示されるようにするには、どのようにすればよいのか どなたか、回答していただけないでしょうか よろしくお願いします

  • ACCESS フォームからサブフォームのデータを更新・入力したい

    ACCESS フォームからサブフォームのデータを更新・入力したい tbl_プロジェクトというテーブルにIDとプロジェクトコード、プロジェクトの基本情報を持たせ、f_プロジェクトフォームからプロジェクトコード、件名、契約日等のデータ及び、f_テーマサブフォームにテーマを入力できるようなフォームを作成しています。フォームで入力したものをそれぞれのテーブルに保存したいのですがうまくいかない部分があります。 フォームから入力すると、tbl_プロジェクトに所属する情報は更新されます。そのtbl_プロジェクトに所属するプロジェクトコードをサブフォームのtbl_テーマのプロジェクトコードにも反映したいのですがどのようにしたらよいでしょうか? そういったことは可能でしょうか?分かりにくい説明で申し訳ないですが教えていただけると助かります。よろしくお願いします! DBの構成 【テーブル】 tbl_プロジェクト (1件1件のIDとプロジェクトコードを持つ) (フィールド:P_ID、プロジェクトコード、件名、契約日など) tbl_テーマ(プロジェクト毎に関連のあるキーワードを持つ) (フィールド:P_ID、プロジェクトコード、テーマ)←これのプロジェクトコードにtbl_プロジェクトのデータが入るようにしたい。 tbl_顧客(プロジェクトを依頼した顧客情報を持つ) 【クエリ】 q_テーマ(プロジェクト、テーマ、顧客を抽出するクエリ) 【フォーム】 f_プロジェクト (プロジェクトを1件ずつ表示・参照・新規作成するフォーム) f_テーマサブフォーム (f_プロジェクトフォームのプロジェクトコードにづきテーマを          表示・入力するサブフォーム) リレーションはP_IDをキーに一対多で作成しています。

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

  • ACCESS2000 フォームとテーブル

    カテゴリを間違っていたので再度ご質問致します。 ACCESSのフォームなんですけど、 フォームとサブフォームがあり、サブフォームの数量の合計をフォームの合計に表示するように出来たのですが、 表示ではなく、テーブルに保存される形にしたいのですが・・。 テーブル T_(1) (1)No. (2)企業名 (3)合計 フォームのレコードソースは、T_(1)です。 今のやり方では、フォームで見ると表示されてますが、 テーブルの合計には保存されてません。 どうすればよいでしょうか? 今は、コントロールソースに、=[サブフォーム名].![テキスト名] にしています。

  • ドロップダウンリストからフィールドの選択

    アクセスを使用してデータベースを作っています。 一例としてですが、テーブル内のフィールドに種類、品名があり、各々についてルックアップウィザードを使用して、種類のフィールドからは、野菜、果物、惣菜・・・などをドロップダウンリストに、品名のフィールドからは、キャベツ、白菜、人参、桃、みかん、バナナ、肉じゃが、カレー、ハンバーグ・・・などをドロップダウンリストに表示できるようになっています。 ところが、品名のドロップダウンリストがあまりに長くなってしまうため、品名の参照元のテーブルにフィールドを3種類(例:品名1野菜・品名2果物・品名3惣菜)作成し、種類のレコード゛の値によって、参照元のテーブルのフィールドを選択しドロップダウンリストの表示が切り替わる(例えば種類のドロップダウンリストに果物を選択すると品名のドロップダウンリストには、桃・みかん・バナナのみが表示される。)ようにしたいのですが、可能でしょうか?

  • アクセス:フォームで氏名をドロップ式で選んでレコード移動

    よろしくお願いします。 おそらく非常に基本的なことだと思いますが、ご指導をお願いいたします。 テーブルでidと氏名はすでに入力されています。他にフィールドがたくさんあり、フォームを使って入力したいのです。次のようにしたいのですが行き詰っています。ご指導お願いします。 やりたいこと:「フォームで氏名のボックスをドロップ式(リスト式?)にして、三角マークをクリックすると氏名が表示され、そこで氏名を選んでレコード移動をし、他のフィールドにデータ入力をしたい。」 よろしくお願いいたします。

  • アクセスのフォームに乗っけられるフィールドは216

    アクセスのフォームに乗っけられるフィールドは216個? アクセス2010で、テーブルのフィールドは250個近くあります。 そのテーブルを元に、単表フォームを作ろうとウィザードを立ち上げたのですが どうしても216個目で「フォームを作成できません」になります。 フィールド名がおかしいのかな?と、216個目のフィールド名を適当な文字に変えてみましたが やはりエラーになります。 ヘルプ等にこのような記載はあるのでしょうか? 探せませんでした。

  • テーブルをフォームにドロップアンドドラッグ

    テーブルをフォームにドロップアンドドラッグをして サブフォームを作成しようと思ったのですが 出来ません。 アクセス2010です。 前までできてたのに、いきなりできなくなりました。

  • accessでこんなこと出来ますか??

    access2000を使用しております。 例えばパソコン教室のクラス分けをするとします。 生徒さんには1回にKEYBOAD・EXCEL・WORDの3科目のテストを5回受けていただきます。その結果によって、A・B・Cのクラスに分けたいと思います。それぞれのクラスには条件があり、AクラスはKEYBOADは50点以上orWord20点以上、BクラスはKeyboad70点以上&(Word60以上orEXCEL30以上)、CクラスはKeyboad80以上&word70点以上&Excel50点以上という条件をつけます。 現在生徒テーブル・テストテーブル・クラステーブルを作ってあり、 生徒テーブルには【(1)生徒ID(2)生徒名】をつくり、 テストテーブルには【(1)テスト回数名(1回目とか)(2)keyboad点数(3)wordの点数(4)Excel(5)生徒ID(生徒テーブルにリレーション)】 それからクラステーブルには、【(1)クラスID(2)クラス名(3)KEYBOAD最低条件(4)WORD最低条件(5)EXCEL最低条件】を作ります。 まず、生徒名を元にテストの点数がサブフォームで見れるフォームを作りました。 ここで、2つ教えていただきたいのです。 1.クラスを元にしたフォームで、先ほどの条件にあう生徒をサブフォームで見れるフォームを作りたい。 2.生徒を元にしたフォームで、その生徒の点数が条件を満たしているクラスをサブフォームで見れるフォームを作りたい。 この2つ出来るのでしょうか?出来るのであればどうすればよいのでしょうか?

専門家に質問してみよう