回答編集履歴

3

説明追記

2020/11/30 04:25

投稿

hatena19
hatena19

スコア33757

test CHANGED
@@ -107,3 +107,35 @@
107
107
 
108
108
 
109
109
  別フォームでという場合は、商品マスターから帳票フォームを再生してそこにコマンドボタンを配置してそのクリック時でカレントレコードの商品IDを入力フォームの商品IDに代入すればいいでしょう。
110
+
111
+
112
+
113
+ 追記
114
+
115
+ ---
116
+
117
+ > 商品マスタの帳票フォームを作成し、コマンドボタンをクリックすると、
118
+
119
+ 該当のカレントレコードの商品IDが上記フォームのIDに代入されるようにしたいのですが、
120
+
121
+ クリック時のコードはどのように書いたらよろしいでしょうか?
122
+
123
+
124
+
125
+ 下記になります。フォーム名やコントロール名は実際のもの合わせてください。
126
+
127
+
128
+
129
+ ```vba
130
+
131
+ Private Sub コマンド1_Click()
132
+
133
+ Forms!入力フォーム!ID.Value = Me.ID.Value
134
+
135
+ Docmd.Close
136
+
137
+ End Sub
138
+
139
+
140
+
141
+ ```

2

参考リンク追加

2020/11/30 04:25

投稿

hatena19
hatena19

スコア33757

test CHANGED
@@ -102,4 +102,8 @@
102
102
 
103
103
 
104
104
 
105
+ [コードでも名称でも入力できるコンボボックス - hatena chips](https://hatenachips.blog.fc2.com/blog-entry-237.html)
106
+
107
+
108
+
105
109
  別フォームでという場合は、商品マスターから帳票フォームを再生してそこにコマンドボタンを配置してそのクリック時でカレントレコードの商品IDを入力フォームの商品IDに代入すればいいでしょう。

1

説明追記

2020/11/30 01:18

投稿

hatena19
hatena19

スコア33757

test CHANGED
@@ -28,7 +28,7 @@
28
28
 
29
29
  入出庫履歴ID オートナンバー型 主キー
30
30
 
31
- 商品マスタID
31
+ 商品ID
32
32
 
33
33
  日付
34
34
 
@@ -46,12 +46,60 @@
46
46
 
47
47
 
48
48
 
49
- さて、
49
+ ---
50
50
 
51
- デザインビューの画像をみる非連結フォームのよですが、ぜ非連結フォームしているのでしょう。
51
+ 初心者ことらまずは連結フォームの使い方を習得してから、
52
52
 
53
- 質問内容からかなりの初心者のよう、なぜ連結フォームにしなでしょう
53
+ それ不満や不足あるときに非連結フォームを検討するとう順番がいいでしょう。
54
54
 
55
- その理由を質問に追加してもらえますか。
56
55
 
56
+
57
+ テーブルの正規化がすんだら、2つのテーブルを連結したクエリを作成します。
58
+
59
+ クエリを新規作成してテーブル「商品マスター」「入出庫履歴」を追加して「商品ID」フィールド同士で結合します。
60
+
61
+ 各テーブルから必要なフィールドを表示させますが「商品ID」は「入出庫履歴」のものを表示させます。
62
+
63
+
64
+
65
+ 上記のクエリを現状のフォームのレコードソースにします。
66
+
67
+ 各テキストボックスのコントロールソースには対応したフィールドを設定します。
68
+
69
+ 品名、品番のテキストボックスの「編集ロック」は「はい」にして編集できないようにしておきます。
70
+
71
+ (マスターの値が不用意に更新されないようにするため)
72
+
73
+ これで、商品IDを入力すると商品マスターから、品名、品番を引っ張ってきて自動表示されます。
74
+
75
+
76
+
77
+ フォームを開いたときに新規データの入力にしたいときは「データ入力」プロパティを「はい」にしておきます。
78
+
79
+ そのほか、いろいろな設定がプロパティでできますので研究してみてください。
80
+
81
+
82
+
83
+
84
+
85
+ > IDのテキストボックス横に、ボタンを配置し、それを押すと
86
+
87
+ ウィンドウorサブフォームにて、商品マスタのデータベースが検索でき、
88
+
57
- れによって回答が変わりま
89
+ の検索結果から一つのレコードを選択ると、
90
+
91
+ 上記画像のフォームに戻り、選択したID、品名、品番が自動で入力されている
92
+
93
+
94
+
95
+ これに関しては別フォームを表示するという方法もありますが、コンボボックスを使うという方法も検討されてはどうでしょうか。
96
+
97
+
98
+
99
+ 下記で、コードでも名称でも入力できるコンボボックスというのを紹介しています。これを使うと、
100
+
101
+ 商品IDが分かっているときは、商品ID、分からないときは商品名で入力という使い方ができます。
102
+
103
+
104
+
105
+ 別フォームでという場合は、商品マスターから帳票フォームを再生してそこにコマンドボタンを配置してそのクリック時でカレントレコードの商品IDを入力フォームの商品IDに代入すればいいでしょう。