• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESSでテーブルでの自動入力)

ACCESSでテーブルでの自動入力

このQ&Aのポイント
  • ACCESS 2007を使用して、得意先テーブルと営業担当者テーブルを組み合わせたクエリを作成します。
  • 得意先情報の新規入力には、得意先クエリを基にしたフォームを使用するのが一般的です。
  • 現段階では担当者IDが入力されていない得意先もありますが、得意先テーブルから入力を行います。担当者IDの入力はクエリやフォームを使用して行います。

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

  • ベストアンサー
  • chayamati
  • ベストアンサー率41% (260/624)
回答No.4

得意先テーブル(得意先ID、名前、住所、担当者ID、営業担当者名)(とりあえずは、営業担当者名だけは空白) 営業担当者テーブル(担当者ID、営業担当者名)を 作成します。 「得意先.担当者ID」と「営業担当者.担当者ID」をリレーションシップすることで「得意先テーブル上の営業担当者名」を参照できますので 不要です、「得意先テーブル上の営業担当者名」のフィールドを削除してください クエリーも不要です ・現段階で、上記の得意先テーブルで、担当者IDが入力されていないものが多数あるのですが (エクセルで取り込んだデータ)、この得意先クエリでは、それらは表示されません。そうすると、得意先テーブルから入力していく必要があります。その場合は、得意先テーブル自体か、そこから作られたフォームに、担当者ID(実際にはこれが、代理店IDで、結構多数あるのですが)、を入力していく形になるかと思います。この場合、得意先テーブルだけをベースとしたクエリやフォームをつくり、担当者IDの入力を(入力しやすい形、自動的に選択できるなど)にして、入力をとりあえず終えきるというのは基本でしょうか。 これがシステムの根源です、先ずこれを次の手順で解消してください 1.担当者テーブルに「未担当」という担当者追加 2.未担当の担当者IDを得意先の担当者IDに入力 3.テーブルデザインで添付図のように

spongetak
質問者

お礼

ありがとうございます。基本的に、テーブルには最低限の情報しか含めないという視点が、分かりました。他の本など見てもそんな感じです。それで進めようと思います。

その他の回答 (3)

noname#231195
noname#231195
回答No.3

#2です。 それはクエリビルダではありません。 私が言っているのはクエリの編集画面です。クエリのデザインビューと書いた方がよかったかもしれません。 この↓ウェブページで分かるでしょうか。 http://fk-plaza.jp/acs/KIS/Manabu_Query1b.htm https://dekiru.net/article/15097/ http://www.accessclub.jp/samplefile/samplefile_06.htm https://www.feedsoft.net/access/guide-query/guideq6.html お礼コメント欄にかかれた画面はリレーションシップの編集ツールですが、私はこれは使いません。 便利なのは分かるのですが、連鎖削除などが行われたとき、なんか予期しないことが起こるような気がして怖いんですよね。 いずれにしてもリレーションシップはここで定義しなくても全然問題ありません。

noname#231195
noname#231195
回答No.2

・得意先テーブル(得意先ID、名前、住所、担当者ID、営業担当者名) ・営業担当者テーブル(担当者ID、営業担当者名) の二つのテーブルがあるんですね? ・得意先クエリ(得意先ID、名前、住所、担当者ID、営業担当者名) というのは、おそらく"担当者ID"で二つのテーブルをつないだクエリですね? クエリビルダで担当者ID同士が線で結ばれているはずですが、この線の上にカーソルあてて右クリックしてみてください。 プロパティを選んで、そこで「得意先テーブルのすべての項目と・・・」というようなことが書いてある選択肢を選びます。すると、得意先テーブルのレコードで担当者IDの入っていないレコードでも表示されるようになります。 これでご質問の問題は大体解決されるのではないでしょうか。 ただし、営業担当者テーブルは最初に完成させておく必要がありますが、5人しかいないのですから問題ないのではないですか? >得意先の情報を新規で入力していく際は、この得意先クエリをベースに作成された、得意先フォームから入力していくというのが・・・ どうでもいいです。テーブルに直接入力してもいいし、クエリから入力してもいいし、フォームから入力しても何でも構いません。 以前のアクセスではフォームやクエリでコンボボックスが使えないとか、テーブルで並べ替えができないとかありましたから、必ず入力フォームを使っていましたが、今のアクセスならそうでもないでしょう。 ただ、入力の便利を考えて改良しようとするとどうしてもフォームでないと実現できない機能があったりしますから、私の場合、最初はテーブル・クエリから入力していても、結局はフォームを作ることが多いです。

spongetak
質問者

お礼

ありがとうございます。だいぶイメージができました。 クエリビルダというのは、(2007なのですが、)リレーションシップというボタンで出てくるものかと思うのですが、1と∞(担当者IDが主キーの担当者リスト側が1で、顧客リストのほうの担当者ID(こちらが∞)となる)で、結ばれています。右クリックしても、該当の「得意先テーブルのすべての項目と・・・」の表示は見当たらないのですが。おそらくそれが可能であれば、おっしゃるとおり問題は解決だと思います。 とりあえずいろいろやってみます。

回答No.1

Q1、得意先の情報を新規で入力していく際は・・・ A1、(当然のことですが)過去のデータは無関係ですよ。 >この得意先クエリをベースに作成された、 >得意先フォームから入力していくというのが一般的なのでしょうか? 否。 そもそも、クエリなんぞは利用しないのが𠮷。 Q2、この場合、クエリやフォームをつくり・・・ A2、クエリの利用は百害あって一利なし。 >得意先テーブルで、担当者IDが入力されていないものが多数ある。 なら、対応表を作って自動入力するか手動入力するかの2拓。 >SQLとかは分かりません。 なら、Accessなんぞ利用すべきではありません。 条件1、SQLが判っている。 条件2、プログラミング経験がある。 条件3、Accessでの開発経験がある。 この3条件を満たしていないのであれば、Access の利用は中止されるべきです。

関連するQ&A