• ベストアンサー

Microsoft Access の使い方について。

Accessの使い方についての質問です。 データベースを作る際に、 レコードの中に例えば「コード番号」とそれに それに対応する「名前」を入力できる二つのフィールドがあったとします。 コード番号をコンボボックスで入力できるようにし、 入力したときに、対応する「名前」が同時に 「名前」のテキストボックスに表示される方法が、あったと思うのですが、 思い出せません。 人に聞いたところ、クエリを使うと教えられたのですが、 クエリを使わない方法があったと思います。 本やネットを調べてみても分かりませんでした。 仕事でAccessでのシステム制作を初めてまかされて、 かなり困っています。 どなたかご存知の方、教えてください。 ちなみにヴァージョンは97です。 お願いします。

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

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

フォームのコンボボックスをCmb1として名前を表示するテクストボックスをText1 とすると(コンボボックスには[コード番号][名前]を表示するようにしてある前提で(#1の方と同条件)) Cmb1のイベントの更新後処理に Private Sub Cmb1_AfterUpdate() Text1 = Cmb1.Column(1) End Sub と記述すればText1に名前が表示されます。 しかしあくまでもフォーム上の表示だけです。念のため。

matocco
質問者

お礼

ありがとうございました! 参考になりました。 特にデータとして保存する必要はかったので この方法をとらせていただきました。 基本的にはyatoaaさんと同じなのかな。

その他の回答 (2)

  • yatoaa
  • ベストアンサー率30% (110/362)
回答No.2

すみません 追加、訂正です ME.TEXB1=TEXA1.COLUM(1) ではなくて ME.TEXB1=TEXA1.COLUMN(1) です よろしくお願いします

matocco
質問者

お礼

ありがとうございました。 サイトを調べていたときよりも 簡潔明瞭で分かりやすかったです。 このとおりにやってみたらできました。

  • yatoaa
  • ベストアンサー率30% (110/362)
回答No.1

こんにちわ テーブルもしくはクエリー名を QQ1 と仮にして説明します QQ1 には  「コード番号」「名前」が存在する必要があります 「コード番号」のテキストボックス名 (コンボボックス)を TEXA1 とします(他の名前でもかまいませんが) 「名前」のテキストボックス名 (普通のテキストボックス)を TEXB1 とします TEXA1 は QQ1 をソース(コンボ値の元)とします 表示項目は「コード番号」「名前」を指定する必要が あります 次に TEXA1 のプロパテイからイベントを選び 更新後のイベント処理を下記のように書きます (イベントプロシジアーを選び、右側の点点で  クリツクで、書きこみ用SUBを表示します) SUBの中に ME.TEXB1=TEXA1.COLUM(1) と書きます TEXA1.COLUM(1) はTEXA1の2番目の項目を意味します

関連するQ&A

  • Accessのフォームでの入力について

    Win7 Access2003 コード(01-0010-000 ~ 99-9999-999) 名前 住所 電話番号 といったデータベースがあって、フォームでコンボボックスからコード入力しています。 「05-0280-000」とハイフォンも含めて入力すればいいのですが、「050280000」と省略入力したく思っています。 書式を「!00\-0000\-000」「!99\-9999\-999」ではダメで、「!@@\-@@@@\-@@@」にすると希望通り表示されますが、「名前 住所 電話番号」が常に先頭のレコードのデータになってしまいます。 「050280000」と入力すると「05-0280-000」と表示されて、「05-0280-000」のデータが出るようにできないでしょうか? どうぞ、宜しくお願いいたします。  

  • Microsoft Access2000で抽出?

    Microsoft Access2000でお客様の来店日を記入帳を作っているのですが、お客様のカルテ番号と名前を別クエリ(住所録 来店日記入クエリ)から 名前を抽出?検索?どちらになしたら良いか解らないのですが、来店日記入フォーム(顧客来店日テーブル/レコードソース) の名前のテキストボックスに記入したいのですがどの様にしたら良いでしょうか? 来店日記入フォーム(顧客来店日テーブル/レコードソース)のカルテ番号(テキストボックス)に記入したカルテ番号で 住所録 来店日記入クエリ(カルテ番号・名前)から名前を抽出して 来店日記入フォームの名前(テキストボックス)に記入したいんです 申し訳ございませんがよろしくお願いします

  • アクセス2010の操作について

    こんばんは! アクセス2010を勉強しておりますが、さまざまの本を読んでもインターネットで検索しても、なかなか基本を理解できず又周囲にも質問できる人がいなく困っております。 以下の内容について数点の質問をさせて頂きますのでご指導をお願いいたします。 作成内容。 社員の成果を入力できるフォームを作成したく、保存したいデータは社員名、社員コード、成果です。社員名は、コンボボックスから選択を行いたい。(できれば社員名を表示すると、自動的に社員コードも表示したいのですが)以下の方法で作成したのですが、うまくできません(質問項目は下段です) ~作成の流れ~ 〇テーブルを作成・・・以下の2つのテーブルを作成し社員データを予め入力。 ・社員マスタ・・・・・・(フィールドは2つ)  「社員名」(テキスト型)  「社員コード」(テキスト型) ※主キー ・入力テーブル・・・・(フィールドは3つ)  「ID」(オートナンバー型)  「社員コード」(テキスト型)  「成果」(テキスト型) ※主キー 〇「社員マスタ」「入力テーブル」の2つのテーブルからクエリを作成。  ・社員コード同士を結合線で結ぶ(自動的に結ばれます)    (フィールド)  ID            社員名     社員コード   成果  (テーブル)   入力テーブル   社員マスタ  社員マスタ   入力テーブル 〇作成したクエリを基にフォームを作成  社員名をコンボボックスから選択できるように変更(値集合ソース→社員マスタ)  社員名をコンボボックスから選択し、社員コードを入力。成果を入力しようとすると。  入力できません。 (質問です)  (1)成果を入力するためにキーボードを押すと、文字が出ずにエラーメッセージ「レコードを追加でき ません。テーブル"入力テーブル"の結合キーがレコードセットにありません」と表示されますがなぜ でしょうか?  (2)、(1)でエラーメッセージが出ても保存を押すと、新規入力画面のコンボボックスに先ほどの入力 内容が追加されてしまうがなぜでしょうか?  (3)クエリとリレーションシップの使い分けの判断は?(今回はクエリから結合線で結びましたが、リレ ーションシップでも似たような事ができます)  (4)入力テーブルのフィールドは上記の3つでよろしいのでしょうか?  (5)このようなものを作成する時の手順を教えて頂けると非常に助かります。 よろしくお願いいたします。  

  • Accessでデータベースを作っています。

    Accessでデータベースを作っています。 先日、こちらで質問をさせていただいて、クエリで複数のフィールドを対象にデータを検索する ことはクリアできました。 ありがとうございました。 ご指導に基づき、4つのフィールド(仮にA,B,C,D)について、クエリの抽出条件に  Like "*" & [Aを入力] & "*"  Like "*" & [Bを入力] & "*" ・・・ とそれぞれ設定してパラメータ入力を求め、4つの条件すべて、または一部のみ設定して検索し、 正しい検索結果が得られました。 今度は、検索用のフォームを作成し、フォームで入力した条件をクエリに送って、同じ結果を 得たいと思うのですが、以下の方法では正しい検索結果が出てきません。 ・フォームに検索用のボックスをA~Dまで4つ作成(ひとつはコンボボックス、あとはテキスト) ・クエリの抽出条件に、それぞれ以下を入力     Like "*" & [Forms]![Q_form(作成したフォームの名前)]!                       [A(それぞれの検索ボックスの名前)] & "*" ・フォームに「クエリの実行」のコマンドボタンを配置 パラメータで入力する代わりにフォームを使いたい、というものなのですが(パラメータ入力 よりも、コンボボックスを使って値を選ぶ方が検索する人には使いやすいかと思って)、どうしたら うまいこといきますでしょうか。。 教えてください。

  • Accessで家計簿を作っているのですが・・・(再

    いつもおせわになっております。 現在、Accessで家計簿なるものを作っているのですが・・・ まずマスタテーブルから入力データが存在する日付をクエリで抽出し、それをフォームのテキストボックス1のコントロールソースに指定して、そのテキストボックス1に表示されている日付を元にフィルタ機能を使ってその日に入力されたデータ一覧をサブフォームで表示するという方式を取っているのですが・・・(解かり難くてすみません この方式だとクエリのレコードを移動するとサブフォームの表示内容も対応してその日のが抽出されます。 しかし、データがたくさん蓄積されてくると一日ずつ(1レコードずつ)移動すると手間がかかってイライラしそうです。 で、同じフォームにコンボボックス1を追加し、上記にもあるマスタテーブルから入力されている日付を抜き出した日付一覧を取得してあるクエリを値集合ソースに指定してみました。 クリック時のイベント等もちゃんと設定したのですが、うまく動作してくれません。 コンボボックス1をクリックして選択したら、クエリをコントロールソースとするテキストボックス1の表示内容がコンボボックス1で選択されたものに変更される、みたいなことって出来ないのでしょうか? コンボボックス1だけにしてテキストボックス1を消すとコンボボックス1で選択した日付の内容をサブフォームで表示することは出来たのですが、それだとコマンドボタンを押して次のフィールドに移動し、かつコンボボックス1の表示内容も自動変更というのが出来なかったので・・・ 長文でスミマセンが、どなたかお知恵の拝借お願いします。

  • accessのレポートで…

    レポート(テーブル1から作成)にあるフィールド1には「1・2・3…」という数字が入っています。 この1・2・3はテーブル2(ID・名前)とリンクしています。 フォーム上ではコンボボックスにして、テーブル2の名前も表示するようになっています。 (テーブルに値としては入っていません) これでレポートを作成した場合、テーブル2の名前を表示させたいのですが、テキストボックスで Iif([フィールド1] = "1","****",Iif(… というようにしてしまうと、せっかくリンクにしたのにデータが固定になってしまうのを避けたいんです。 フォームだとコンボボックスの更新後処理とレコードの移動にコードをかけば最新の情報を表示することができたんですが、レポートでもこのようなことはできるんでしょうか? (コードをかいて処理したいです) Access2000です。 よろしくお願いします。

  • アクセスについての質問です

    アクセスについて、次の項目について教えてください。 1.テーブルからフォームを作り、後でテーブルのフィールドの属性を変えた場合(たとえば、テキスト ボックスからコンボボックス等)、フォームにこれ が対応しません。対応させる方法はありますか。 2.アクセスでデータベースを開いたときに希望のフォームが最初に自動的に開くように設定したいので すが、どのようにすればよいでしょうか 3.生年月日を入力したらそれが自動的に年齢になるような背低は可能でしょうか。(フリガナ入力支援 のような) たくさん質問して恐縮ですが、分かるものだけでもけっこうですのでご回答よろしくお願いします

  • アクセス初心者です。

    アクセスのフォームについてです。番号を選ぶとリスト表示がでてきて自動的にテキストに文字列が入るように作ったのですが、思うようにいきません。 コンボボックス 名前     cmb_コード 列数     2 値集合タイプ テーブル/クエリ 値集合ソース T_ 納品物コード 列幅     2;4 連結列    1 で、テキストフィールドに[cmb_コード].column(1) としました。 コンボボックスに2列分のデータが出てくるのですが、列数も2列分表示されるのですが、コンボボックスの2幅ぶんでしか見れません。上下左右ともスクロールが表示されています。左右スクロールを表示しなくても2列分のデータが見れるようにしたいのですが、どのようにすればいいのでしょうか?別項目はきちんとできているのですが、この部分だけできません。見比べたのですが、違いが分かりません。よろしくお願いします。

  • Accessのフォームの詳細カテゴリーでのテキストボックスについて

    Accessで以下のようなフォームを作成しました。 -------------ヘッダー---------------------------- [名前] [所属コード] [ 詳細 ] -------------詳細-------------------------------- あいう [ ] [ ] かきく [ ] [ ] さしす [ ] [ ] 名前と所属コードはテーブルにフィールド定義しています。 ここで、所属コードが入力されると、そのコードからほかの テーブルを検索し詳細に内容を出力しようとしているのですが 詳細に値をセットすると全レコードの詳細のテキストボックス に内容がセットされてしまいます。 「あいう」の所属コードが入力されたら「あいう」の詳細テキスト ボックスのみに値を入れることはできないのでしょうか? やはり、新たにクエリを作って詳細を紐付けるか「詳細」を同じ テーブルのフィールドとして定義するしかないのでしょうか? ご教授願います。

  • Accessのコンボボックスの絞込み検索について教えて下さい

    Accessで仕入伝票の入力作業をしています。 入力フォームの中のコンボボックスを開いて仕入先コードを入力しますが、仕入先が多いため別のテキストボックス(テキスト名=「読みがな」)に入力された読みがなを使って絞込みをします。方法はコンボボックスの集合ソースのクエリーの社名フリガナのフィールドに 「 like "*" & [forms]![F_入力票]![読みがな] & "*"」と抽出条件を入れました。 これでうまく絞り込みができましたが、同じ様にこれをサブフォームの中で行うとエラー(「読みがな」が存在しない)になってしまいます。 このエラーを回避してうまく絞り込みができる方法を教えて下さい。 よろしくお願いします。

専門家に質問してみよう