販売管理のデータベースを作成しています。
『販売店マスターテーブル』
販売店コード(主キー)
販売店名
郵便番号
住所
電話番号
営業担当者コード
『営業担当者テーブル』
営業担当者コード(主キー)
営業担当者名
『販売伝票テーブル』
伝票番号(主キー)
売上日
販売店コード
この中で、『販売店マスターテーブル』から、販売店コード,販売店名,郵便番号,住所,電話番号,営業担当者コードを、
『営業担当者テーブル』から、営業担当者名を使って、新しいクエリを作成しました。
そのクエリを基にフォームを作成しましたが、フォームに新規レコードを入力できません。
念のため、販売店コードを『販売伝票テーブル』からとってきたら、新規レコードが入力できるようになりました。
これは、何か主キーの関係で入力できないんでしょうか。
もし、『販売伝票テーブル』から販売店コードをとらなくちゃいけないとしたら、それはナゼでしょうか・・。
初歩的なことで申し訳ありませんが、とても困っています。
どなたかお分かりになる方、教えて下さい。
よろしくお願いします。
No.5ベストアンサー
- 回答日時:
>営業担当者コードは表示したいので、キー列を表示しない」のチェックを外してあ
>ります
コンボボックスを開くと [営業担当者コード][営業担当者名]の2列が表示される
状態ですね。
簡単な方法は2つあります。
そのコンボボックスをコンボ1 担当者の名前を表示したいテクストボックスをテキ
スト1とすると
1.コンボボックスの表示から持ってくる
コンボ1のプロパティを開きイベントの更新後処理にコードビルダで
Private Sub コンボ1_AfterUpdate()
テキスト1 = コンボ1.Column(1)
End Sub
と記述すればテクスト1にデータを取り込めます。
2.クエリから取り込む
フォームの元になるクエリに『営業担当者テーブル』を追加してあれば営業担当者名
をクエリのフィールドに追加してテクスト1のプロパティのコントロールソースに
営業担当者名を設定すれば良いと思います。
Lookupとか使うやりかたも有りますが上記でOKではないでしょうかLookupなどは
ご自分で勉強してみてください。頑張ってくだい。
ありがとうございました。
本当に本当に助かりました。
O_cyanさんのおかげで、リレーションの大切さを少しは分かった気がします。
コンボボックスのデータを参照するコードビルダも、何もかもすべて勉強になりました。アクセスは難しくて苦手ですが、これからも勉強してがんばります。
No.3
- 回答日時:
>『販売店マスターテーブル』から、販売店コード,販売店名,郵便番号,住所,電話番
>号,営業担当者コードを『営業担当者テーブル』から、営業担当者名を使って、新
>しいクエリを作成しました。そのクエリを基にフォームを作成しましたが、フォー
>ムに新規レコードを入力できません
これは販売店マスタにレコードを入力するフォームですよね。このフォームの
クエリに販売伝票テーブルから販売店コードを持ってくるのは構築上おかしい
ですよね。
リレーションは『営業担当者テーブル』営業担当者コードと『販売店マスターテー
ブル』営業担当者コード が1対多のリレーションで繋がり『販売店マスターテーブ
ル』販売店コードと『販売伝票テーブル』販売店コード が1対多で繋がっている
リレーションだと思いますが
>『営業担当者テーブル』から営業担当者名を使って新しいクエリを作成しました
これは営業担当者コードの誤りではないですか?
『営業担当者テーブル』に担当者全て入力されているとすればこのフォームで
『営業担当者テーブル』にはレコードを追加できない仕様です。
営業担当者コードは主キーになっていて重複しない設定になっているはずです。
『営業担当者テーブル』からは営業担当者コードのみ『販売店マスターテーブル』
に書き込みに行き(営業担当者名フィールドがないので)営業担当者名は非連結の
フィールドを作り表示だけにする様にすれば大丈夫だと思います。
ありがとうございました。
O_cyanさんの言うとおり、「営業担当者コード」を『販売店マスターテーブル』から持ってきたら、データが入力できました。
そこで、「営業担当者コード」をコンボボックスにして、『営業担当者テーブル』の、「営業担当者コード」と「営業担当者名」を表示するように、コンボボックスを作成しましたが、その下に作った、非連結のテキストボックスに、コンボボックスの2列目の「営業担当者」を参照させるにはどうしたらいいんでしょうか。
営業担当者コードは表示したいので、キー列を表示しない」のチェックを外してあります。
もしお分かりになったら教えていただきたいのですが・・。
こんな初歩的なことを伺ってごめんなさい。
No.2
- 回答日時:
多分問題は、営業担当者テーブルから持ってきた
営業担当者名です。
営業担当者テーブルの担当者コードのデータ型は何になっていますか?
もし数値型やテキスト型なら、そのフォームにデータを入れると、
営業担当者テーブルの主キーである、「営業担当者コード」にデータが入りませんよね?
主キーは基本的に空白にすることはできないので
担当者テーブルの担当者コードをオートナンバーにするか、
担当者テーブルにデータを入力してから
コンボボックスなどで選択するスタイルにしてはどうでしょう?
ありがとうございました。
やっぱり「営業担当者コード」と「営業担当者名」が問題みたいです。
今は、コンボボックスの値を、非連結のテキストボックスに参照させる操作で止まっています・・(T_T)
なぜ「キー列に表示しない」が推奨なんでしょう・・。
Accessは難しいですね・・。もうわけが分かりません(T_T)
No.1
- 回答日時:
販売店マスターテーブルの販売店コードというのは、主キーに設定されているものですよね。
これは(主キーというのは)、重複することのないデータです。つまり 1 A商店 2 B商店とつけていくものですよね。1 C商店とつけることはできません。(重複するから)
この場合の、販売店コードは、1は何なにで2が何なにだということを指定するためのものです。
その点 販売伝票テーブルの販売店コードは主キーには設定されていません。
つまり、販売店の名前を入力する代わりに販売店コードを入力するわけですよね。
ですから、販売伝票テーブルから販売店コードを持ってくるわけです。
うまく説明できなくてすみません。
さっそくの回答、ありがとうございました。
kake_angelさんの方法で作ってみたら、「販売店コード」は入力できるようになりましたが、それ以降はやっぱり入力できませんでした。
でも、早く答えていただいて嬉しかったです。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessのフォームで計算した結...
-
AccessVBA SetFocusとGoToCon...
-
Accessのフォームのテキストボ...
-
差込印刷での全角表示について...
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
-
アクセスのエラー「クエリには...
-
クロス集計クエリの結果をテー...
-
2つのテーブルに共通するレコ...
-
エクセルにおける「フィールド...
-
アクセスで追加した項目に全て...
-
ACCESS クエリの抽出条件に他の...
-
Excleピボットでデータのない部...
-
Accessで、1つの項目に複数の...
-
アクセス クロス集計クエリ→テ...
-
VBA 別シートの同じ日付の欄に...
-
Accessの桁区切りについ...
-
access インポート時、既にある...
-
ACCESSのクエリで抽出条件「ま...
-
アクセスクエリで英数字のみ半...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessのフォームのテキストボ...
-
AccessVBA SetFocusとGoToCon...
-
Accessのフォームで計算した結...
-
Access フォームの参照先について
-
ACCESSで他のテーブルからのデ...
-
初心者なのですが・・・access...
-
accessについてです。
-
Accessでアンケート集計を構築...
-
Access97のフォームで一人につ...
-
Access2002のリレーションにつ...
-
アクセスのデータをCSVファイル...
-
access 2016で請求書アプリを作...
-
筆ぐるめ2004での住所録のソー...
-
アクセス 各テーブルでのフィ...
-
差込印刷での全角表示について...
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
-
アクセスのエラー「クエリには...
-
エクセルにおける「フィールド...
-
2つのテーブルに共通するレコ...
おすすめ情報