• 締切済み

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

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

みんなの回答

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

社員名を選択してから社員コードを入れるのはなぜ? 社員選択は、社員コード・社員名の2列とし、列幅を0cm; 2cmとする。連結は社員コードで。 同姓同名を考慮するなら社員コード名も表示。 入カテーブルは事前に作るのか? 入力終了時に作るなら事前にクエリで結合することはできないでしょ

sukeroku111
質問者

お礼

こんばんは。 早速のご回答ありがとうございます。 ひとつひとつ勉強させていただきます。 ありがとうございました。

関連するQ&A

  • 【Access97】DLookupについて

     Access97を使って今、データベースを作成していますが、行き詰まってしまいました。  まず大まかな構成を書くと… <テーブル> 【○○班データ】テーブル ・「データナンバー」フィールド ・「部材名」フィールド ・「部材ナンバー」フィールド ・「部材コード」フィールド 【部材マスター】テーブル ・「部材名」フィールド ・「部材ナンバー」フィールド ・「部材コード」フィールド <クエリー> 【○○班データクエリー】 「○○班データ」テーブルを元に選択クエリーを作成(全てのフィールド) <フォーム> 上記のクエリーを元に作成。 ここからが質問内容になるのですが、「部材名」をコンボボックスで入力したら、Dlookup関数をテキストボックスのコントロールソースに記述して「部材ナンバー」と「部材コード」が表示されるようにはできました。 ですが、フォームで表示された「部材ナンバー」や「部材コード」がクエリーやテーブルには反映(入力)されておらず、どうしたらいいか手詰まりになっています。 もし、対処法を御存知の方がいらっしゃったら、是非とも御教示をお願いします。 念の為にテキストボックスのコントロールソースで記述したDLookup関数を書いておきます。 「部材ナンバー」の呼び出し =DLookUp("[部材ナンバー]","[部材マスター]","[部材名]='" & [部材名] & "'") 「部材コード」の呼び出し =DLookUp("[部材コード]","[部材マスター]","[部材名]='" & [部材名] & "'")

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

    こんばんは、アクセス2010の操作方法について教えてください。 【やりたいこと】 フォームで、コンボボックスから社員名を選択した際、その選んだ社員名に該当する「社員番号」を、隣に作ったテキストボックスに表示させたい。 テーブルは「基礎データ」と「入力用」の2つがあります。 「基礎データ」のフィールドには、(1)社員名 (2)社員番号(主キー) 「入力用」のフィールドには、(1)社員名 (2)社員番号 (3)記録があります。尚、(1)の社員名はルックアップで「基礎データ」の社員名を参照しています。 「入力用」のテーブルから、フォームを作成しました。 このフォームで(1)社員名をコンボボックスから選択した際に、(2)に該当する社員番号を表示させたいのです。 ※勉強を始めて日が浅く、いろいろ調べていますが思うように進まず、解決ができないので質問しました。 わかりにくい所もあるとは思いますが、ご指導をお願いできたらと思います。 よろしくお願いします。

  • VBAでSQL文の実行の記述について

    こんにちは。アクセスVBA初心者です。 どなたか教えてください! キーが二つあるテーブルに対して、 クエリやマクロを使わずにSQL文を使って存在チェック処理を行って、 ・0件ならば、画面入力値で登録処理、 ・0件でないならば、画面入力値で担当者名を更新処理 という処理を行いたいのですが、 どのようにVBA上でSQL文を記述し、 上記の条件を記述すればいいのかわかりません。 ちなみにテーブル名は「担当者マスタ」で フィールドは ・「支店コード」→第一キー ・「担当者コード」→第二キー ・「担当者名」 です。支店と担当者の組み合わせはユニークです。 画面フォーム名は「担当者マスタメンテ」で 画面フィールドは ・「支店コード」コンボボックス ・「担当者コード」コンボボックス ・「担当者名」テキストフィールド です。 どうか教えてください!お願いいたします!

  • access 入力フォームへの表示

    初歩的な質問で申し訳ありません。 accessで商品マスタへの入力フォームを作成しました。 商品マスタテーブルから作成しました。 新規入力ボタン、登録ボタンを作成して、ボタンクリック時にのみ 新しいレコードへの移動、テーブルへのデータ更新を実行するようにしました。 この段階で、できれば入力フォーム上でコンボボックスなどを利用して検索を行い、 選択データをフォーム上に表示させたいと思いました。 ところがまったく知恵が働かず、どうしてよいのやら途方にくれています。 検索フォームを別途設けてもよいのですが、商品数が200たらずで、 今はコンボボックスで十分かなと思っています。 商品マスタにはカタカナ二文字の「検索キー」フィールドを設けており、 これをキーにしてクエリ(「Q商品検索」)で昇順に並べ、コンボボックスのコントロールソースを そのクエリにしました。 コンボボックスの更新後の処理イベントでマクロを使い、 「フォームを開く」にしてみましたが、その他の条件のつけ方がわかりません。 まったく的外れなことをしているのかもしれません・・・。 本やネットの質問過去ログで探してはみましたが、皆さん先を進んでおられて、窮してしまっています・・・。 このような状態でaccessを触るな!とお叱りを受けそうですが、 どうかお助け下さい。 よろしくお願いします。

  • ACCESSでクエリ作成時複数のフィールドを同じマスタ項目から抽出する方法

    ACCESSでクエリを作成しています。テーブルは”売上明細”と”社員マスタ”があります。売上明細には”担当者CD”と”加工者CD”というフィールドがあって、それぞれのフィールドが、同じ社員マスタの”社員CD”をキーに”社員名”を抽出したいのですが、「あいまいな外部結合が含まれているので、SQLステートメントを実行できません。第一次結合を実行する分割クエリを作成し、SQLステートメントにそのクエリを含めてください」とメッセージが出ます。どこにどのように設定すればいいのでしょうか?優先順位は特にありませんが、最初に設定されている担当者CDを第一次結合とする場合どうすればいいのでしょうか?この第一次・第二次はどのような意味があるのでしょうか?まだVBAは手付かずで、初心者です!これから学習しようとしているところです。よろしくお願いいたします。

  • レポートでの表示

    いつもお世話になっております。 発注書を作成している、アクセス初心者です。 アクセス2000で作成した発注書フォームで 発注者欄を設けているのですが 印刷すると、 発注者名ではなく発注者コードが印刷されてしまいます フォーム上では発注者名が表示されているのですが。。。 発注者名を印刷するにはどうしたらいいですか? レポートのコントロールソース  「発注書印刷」(←選択クエリ) レポートの発注者名のテキストボックスのコントロールソース:「発注者」 SELECT 発注書.発注者 発注書テーブルの  発注者=テキスト型 フォーム上の発注者の部分(コンボボックス) コントロールソース「発注者」 値集合ソース SELECT 社員マスタ.社員コード, 社員マスタ.社員名 FROM 社員マスタ ORDER BY 社員マスタ.社員コード; 社員マスタ:テーブル 社員コード(主キー)数値型 社員名 テキスト型 です この情報だけで回答が得られるかどうかも自信がありませんが 解決策をご存知の方がいらっしゃったらどうかお力をお貸しくださいませ。

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

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

  • アクセスでのリスト表示について。

    アクセス初心者です。フォームのコンボボックスにテキストボックスをつけて、コンボボックスには担当者コードテキストボックスには=cmb_担当者.column(1)等と書いて、担当者名をcolumnで表示するのは可能ですよね。リストボックスの中で一覧表を作成したのですが、今は数値ばかりが見えていて、訳が分かりません。テーブルへのデータはほとんど数値で入っていくようにしています。columnが使えたら、テキストでも表示されるので見やすくなると思うのですが、クエリでのcolumnの作成は可能なのでしょうか?

  • 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つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • access コンボボックスの次

    顧客管理・商品管理の簡略化を目指している初心者です。商品マスター・仕入先・販売先というテーブルを作成、商品情報の入力・閲覧のためのフォームを作ろうと思っています。 1)商品マスターテーブルには、仕入先コードと販売先コードが入っています。フォーム上では仕入先名・販売先名も確認したいのですが、 「商品マスターテーブルにそれらを追加したクエリを作成 → クエリからフォームを作成」 という方法でよいでしょうか。 2)フォーム上で仕入先コードと仕入先名のコンボボックスを設置します。コードを選択すると自動的に次の欄に仕入先名が反映されるようにする方法を教えてください。 おそらく非常に初歩的な質問かと思いますが、マニュアルを見たり検索をかけたりしても要領を得ません。アドバイスをどうぞよろしくお願いいたします。

専門家に質問してみよう