teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

加筆修正

2018/05/22 07:29

投稿

退会済みユーザー
answer CHANGED
@@ -15,5 +15,6 @@
15
15
  最後.Updateとか書けばいい。
16
16
 
17
17
  ![フォームとテーブル](be14093da791c3d0a8ab040035332415.png)
18
-
18
+ 画像の中でテキスト7って書いてる隣のテキストボックスには、
19
+ ちゃんと名前:「関連商品1」「関連商品2」「関連商品3」ってなってる。
19
20
  ![サンプルコード](f7f578722b718fd3db057b5362b8e885.png)

1

見直し

2018/05/22 07:29

投稿

退会済みユーザー
answer CHANGED
@@ -1,1 +1,19 @@
1
- 関連商品の個数分、forループなどで.AddNewすればいいのでは?
1
+ 関連商品の個数分、forループなどで.AddNewすればいいのでは?
2
+
3
+ もう少し丁寧に説明すると、
4
+ ![例えばテーブル構造](486866d582641c4bd0002a95baea9179.png)
5
+ のようなテーブル構造を例示する。
6
+ もしも、日付、伝票番号を主キーにしたり、あるいはインデックス:「はい(重複なし)」にしてしまうと、
7
+ 複数レコードを登録することができなくなる。
8
+ レコードをユニークに識別するために、ユーザーに入力させない、
9
+ オートナンバー型の例えばIDなるフィールドを設けてやると扱いやすい。
10
+ そうしないと、関連商品3個から2個に減らしたい、なんていう操作が大変なことになるから。
11
+
12
+ オートナンバー型のフィールドは、
13
+ .AddNewするときに自動で値を作ってくれるから気にしなくてよい。
14
+ .AddNewして、.Fields("~") = Me.テキストボックス1.Valueとかやって、
15
+ 最後.Updateとか書けばいい。
16
+
17
+ ![フォームとテーブル](be14093da791c3d0a8ab040035332415.png)
18
+
19
+ ![サンプルコード](f7f578722b718fd3db057b5362b8e885.png)