
No.1ベストアンサー
- 回答日時:
はじめの手順から書きます。
顧客コードと氏名・住所・TELが入ったテーブルを作ります。(顧客マスタの事)
>コードと商品名のはいったテーブルとフォームは作ったのですが・・・
と言うことですので、商品用のテーブルはできています。
もう1つ、テーブルとテーブルのリレーション(関連性)を設定しやすいように、
オートナンバーを設定した主キー用のフィールドと、
顧客コードと、商品コードを設定したテーブルを作ると良いでしょう。(以下Cテーブルと呼びます。)
あとは、テーブルのリレーション設定を行います。
リレーションシップボタンをクリックし、
テーブルをすべて表示させます。
次に、顧客用のテーブルから顧客コードをCテーブルの顧客コードへとドラッグし、参照整合性にチェックを入れます。
そして、作成をクリックします。
同様に、商品コードの入ったテーブルから、
Cテーブルへとドラッグし、参照整合性にチェックを入れます。そして作成をクリックします。
続いて、クエリの作成に移ります。
オブジェクトをクエリに変更します。
デザインビューでクエリを作成し、
テーブルの一覧を表示させます。
一覧から、まず
Cテーブルのオートナンバーを設定したフィールドを
ダブルクリックします。
次に、Cテーブルの顧客コードをダブルクリックします。
次に、顧客マスタに入っている名前・住所・TELの順にダブルクリックしていきます。
次に、Cテーブルの商品コードをダブルクリックします。
そして、商品名をダブルクリックして
必要なフィールドの設定が完了します。
クエリは、名前をつけて保存しましょう。
(以下では、Q顧客商品と呼びます。)
できた、Q顧客商品を
ウィザードを使用してフォームを作成するから
選択して、完了。
これで、コードを入れるだけで、
テーブルから名前・住所・TEL・商品名が
自動表示されるようになります。
文章で書き並べた感がありますので、
分かりにくければ、また、ご質問ください。では。
この回答への補足
打ち込むとテーブルにデータが残っていくフォームがすでにあり、ここに、今回のコードを打ち込む項目を追加したいです。
アドバイスいただいた方法で作成したクエリのデータを既存フォームのコントロールソースで表示し無理やり持って行ってみましたがだめみたいです。
具体的に書いていただいてわかりやすかったため、何とか最後までたどり着くことができました。
おかげでコードを入れると商品名などが出るようになりました。
ここでどうしてもわからず困っているのが、最後の
>できた、Q顧客商品を
>ウィザードを使用してフォームを作成するから
>選択して、完了。
のところを、新しいフォームとしてでなく既存のフォームにつくるやり方です。お手数をおかけしますがアドバイスいただけないでしょうか。
No.5
- 回答日時:
なかなか、返答がなく
ヤキモキされたところもあったと思いますが、
完成されて良かったです。
テーブルで作ったものを
クエリで組み合わせ
それをフォームで呼び出す
が基本の流れです。
印刷を工夫したい場合は、レポートを使うのも
良いでしょう。
そして、ソフト的に
簡単に操作をしたい場合は、
フォームにボタンを作成して、
クリック時にマクロを実行するようにします。
少しややこしい話になるかもしれませんが、
アクセスは
テーブル間の関連性が大事です。
特に、1対多の関係が
整理できていると、良いものを作りやすくなります。
※1(一種類ずつデータが登録されているフィールド)
多(何回も同じデータが登場するフィールド)
ご指摘のとおり、「基本の流れ」「テーブル間の関連性」が作っていてもまだぼんやりとしているレベルです。
おかげでもう少しで印刷までたどり着けそうです。
ありがとうございました。
No.4
- 回答日時:
もう少しでできそうですね。
○「日にち」「商品コード」「商品」「顧客コード」「顧客名」「金額」を入力すると「消費税」「合計」が計算されるクエリ
を、既存のフォームに設定した後、
テキストボックスを右クリックし、
表示させたいフィールド名を
コントロールボックスから選択します。
それで、できると思います。
アドバイスが遅くなりましたが、もう少しでできそうなので、
頑張ってください。多少説明の悪いところもありますが、完成までお付き合いできればと思います。
おかげさまで何とかできました。
イメージとは違うので復習もかねてもう一度はじめから作り直してみようと思います。
お手数をおかけいたしました。
No.3
- 回答日時:
1件目の回答に対してのコメントで、
「コードを入れると商品名などが出るようになりました。」と言う内容がありました。
そのクエリと同じように、
「日にち」「商品コード」「商品」「顧客コード」「顧客名」「金額」を入力すると「消費税」「合計」が計算されるクエリを作成します。
それを、今のフォームで表示されるように
設定すればよいでしょう。
設定の仕方は、
○フォームセレクタを右クリック⇒プロパティ。
○レコードソースからクエリを選択。
です。
ただ、既存のフォームなので、
テキストボックスのコントロールソースを
変更する必要があるでしょう。
29日に時間があるので、
画像入りのHPでも作成してアップいたしましょうか?
※ポイントは、
クエリ、フォームで入力したデータは、
結果的にテーブルに保存されると言うことです。
(テーブルから、フォームにデータを呼び出しても、
クエリで、仮想のテーブルを作り、フォームに
呼び出しても、データは結果的にテーブルに保存
されます。)
○コードを入れると商品名などが出るクエリ
○フォームセレクタを右クリック⇒プロパティ。
○レコードソースからクエリを選択。
まではアドバイスのおかげでできました。
(緑色の三角が表示されていいのですよね)
○「日にち」「商品コード」「商品」「顧客コード」「顧客名」「金額」を入力すると「消費税」「合計」が計算されるクエリ
も、もう少し頑張ればできそうです。
○テキストボックスのコントロールソースを
変更する
ここがさっぱりです。
お世話になりすぎて恐縮していますが、よろしくお願いします。
No.2
- 回答日時:
フォームの用途が分かれば適切なアドバイスができるのですが、、、
「テーブルにデータが残っていくフォームがすでにあり」
というのは、どのようなデータが残っていくようになっているのでしょうか。
商品コードと商品名を登録したり
顧客コードと顧客名を登録するためのフォームであれば、
そこに、上記コードを呼び出すテキストボックスを
入れるのは、おすすめしません。
ただ、どの顧客にどの商品を販売したのか
あらわすようなものなら(いわば売上データを入力するフォーム)おすすめします。
方法としては、
(1)既存のフォームを選択⇒デザインビューで開きます。
水平ルーラーの左、垂直ルーラーから見れば上
(ウィンドウの左上に)灰色の□(四角)があります。
(2)フォームセレクタと言う名前なのですが、そこを
右クリック⇒プロパティとします。
(3)レコードソースから、
新規に作成していただいたクエリを選択すれば上手くいくでしょう。
あとは、テキストボックスのコントロールソースを
変更する必要があるかもしれません。
※上手くいかないようなら
どのようなデータを入力するフォームなのか教えていただければ、適切なアドバイスができると思います。
よろしくお願いいたします。
フォームから「日にち」「商品コード」「商品」「顧客コード」「顧客名」「金額」を入力すると「消費税」「合計」が計算され、テーブルにデータが溜まっていきます。そのフォーム配置のまま入力した文字だけをドットプリンターで印刷しています。▲(向きが違いますが)を押し次次にデータを入力していくようになっています。
今回、「商品コード」「商品」それぞれ入力しているので、「商品コード」を入れると「商品」が自動で出るようにして手間を減らせればと思い質問しました。
(わかりにくい書き方ですいません)
>(1)既存のフォームを選択⇒デザインビューで開きます。
>水平ルーラーの左、垂直ルーラーから見れば上
(ウィンドウの左上に)灰色の□(四角)があります。
>(2)フォームセレクタと言う名前なのですが、そこを
右クリック⇒プロパティとします。
>(3)レコードソースから、
今回教えていただいた方法だと、緑色の小さな三角がすべてのテキストボックスの左上に表示されます・・。
可能であれば、引き続きアドバイスよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
アクセスでコードを入れると名前が入るようにしたい(ただし、コード入力と名前は同じフィールド)
Access(アクセス)
-
AccessでIDを入力したら他の項目も自動で表示
Access(アクセス)
-
商品番号を入力すると、商品名フィールドに自動で名前が出てくるようにしたいのですが・・・
その他(データベース)
-
-
4
アクセスのテーブルでコードを入力したら名前が出るようにしたい
Access(アクセス)
-
5
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
6
Access 別フォームへの再クエリ(更新)がしたい。
その他(データベース)
-
7
商品コード番号を入力すると商品名が商品名フィールドに自動的に入力されるようにしたいのですが
その他(データベース)
-
8
access テキストボックスの値取得
Access(アクセス)
-
9
Access2010 Enterで次テキストへ移動
その他(Microsoft Office)
-
10
「フォームを作成できませんでした」
Access(アクセス)
-
11
accessでクエリをExcelにエクスポートする時にファイル名に日付を追加したい
Access(アクセス)
-
12
アクセスで入力したデータの順番が変わってしまいます
その他(ビジネス・キャリア)
-
13
Accessのクエリでデータの入力ができません
Access(アクセス)
-
14
Accessのフォームで、画面表示されているものを印刷する
Access(アクセス)
-
15
Access サブフォームでの選択行の取得
その他(データベース)
-
16
ACCESSのフォームからデータの追加ができない
その他(データベース)
-
17
ラベルとテキストボックスのグループ化を解除したい
Access(アクセス)
-
18
親・子リンクフィールドの設定は、どうすればよいのでしょうか。
その他(Microsoft Office)
-
19
コンボボックスで入力したものが ID?で表示される
Access(アクセス)
-
20
Accessでフォームに自動入力した内容をテーブルに反映させる方法はありますか?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでコードを入れると名前...
-
アクセス テーブル 列を行にし...
-
「直需」の意味を教えてください
-
Excel 2019 のピボットテーブル...
-
ACCESS検索★ある文字を複数のフ...
-
【Access】フォームで自動計算...
-
エクセルグラフの凡例スペース
-
Accessのクエリでデータの入力...
-
日本語のテーブル名、カラム名...
-
Access クロス集計クエリについて
-
データがある場合のカラムの削除
-
再計算って出来ますか?
-
下記の事を行うSQLがわかりませ...
-
カウントが出来ません
-
Countと受付状態の表示に...
-
【続続】Access2002で連番のつ...
-
Accessでテーブル名やクエリ名...
-
accsessで顧客コードで氏名を呼...
-
AccessでNullをカウントする方法
-
Access2000 更新のタイミング?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでコードを入れると名前...
-
Access schema.ini使用方法に...
-
関連がある複数のテキストファ...
-
ACCESSで、EXCELのVlookup的な...
-
AccessでExcelのvlookup
-
Msgboxにテーブルのレコードを...
-
アクセス テーブル 列を行にし...
-
Excel 2019 のピボットテーブル...
-
「直需」の意味を教えてください
-
Accessでテーブル名やクエリ名...
-
【Access】フォームで自動計算...
-
保存された情報として表示され...
-
accsessで顧客コードで氏名を呼...
-
【続続】Access2002で連番のつ...
-
下記の事を行うSQLがわかりませ...
-
Access クロス集計クエリについて
-
再計算って出来ますか?
-
Countと受付状態の表示に...
-
Access2000 更新のタイミング?
-
カウントが出来ません
おすすめ情報