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

質問編集履歴

4

追記

2021/11/01 03:29

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -42,7 +42,7 @@
42
42
  2021/11/01 10:35で提示していただいた作業をしたところ、
43
43
  (A)の状態になりました。
44
44
 
45
- 質問したサブフォームは、ナビゲーションフォームの中にフォームAがあり、さらにその中にあるサブフォームでした。説明が長くなり、関係ないと思っていたので省略しいました。すみません。それが関係していそうです。ナビゲーションフォームのタブをクリックしてフォームA(とその中にあるサブフォーム)を表示すると、サブフォームの**DoCmd.GoToRecord , , acNewRec**が実行され、おそらく(A)の状態になり、その後フォーカスがナビゲーションフォームのクリックしたタブに移るので、行は選択されていてもすぐには入力できない状態になるのだと思います。ナビゲーションフォームで選択するフォームが変更された場合に、フォーカスを変更すると解決するのではないかと思いますが、方法が分かりません。
45
+ 質問したサブフォームは、ナビゲーションフォームの中にフォームAがあり、さらにその中にあるサブフォームでした。説明が抜けていてすみません。それが関係していそうです。ナビゲーションフォームのタブをクリックしてフォームA(とその中にあるサブフォーム)を表示すると、サブフォームの**DoCmd.GoToRecord , , acNewRec**が実行され、おそらく(A)の状態になり、その後フォーカスがナビゲーションフォームのクリックしたタブに移るので、行は選択されていてもすぐには入力できない状態になるのだと思います。ナビゲーションフォームで選択するフォームが変更された場合にフォーカスを移動するかナビゲーションフォームのタブにフォーカスが移った後に**DoCmd.GoToRecord , , acNewRec**実行すると解決するのではないかと思いますが、方法が分かりません。
46
46
  よろしくお願いします。
47
47
 
48
48
 

3

追記

2021/11/01 03:29

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -36,6 +36,13 @@
36
36
  は、サブフォームのLoad時に実行しています。
37
37
  サブフォームに新規行はあります。
38
38
  データの追加もできます。
39
+
40
+ (追記)
41
+ サブフォームはデータシートビュー表示です。
42
+ 2021/11/01 10:35で提示していただいた作業をしたところ、
43
+ (A)の状態になりました。
44
+
45
+ 質問したサブフォームは、ナビゲーションフォームの中にフォームAがあり、さらにその中にあるサブフォームでした。説明が長くなり、関係ないと思っていたので省略していました。すみません。それが関係していそうです。ナビゲーションフォームのタブをクリックしてフォームA(とその中にあるサブフォーム)を表示すると、サブフォームの**DoCmd.GoToRecord , , acNewRec**が実行され、おそらく(A)の状態になり、その後フォーカスがナビゲーションフォームのクリックしたタブに移るので、行は選択されていてもすぐには入力できない状態になるのだと思います。ナビゲーションフォームで選択するフォームが変更された場合に、フォーカスを変更すると解決するのではないかと思いますが、方法が分かりません。
39
46
  よろしくお願いします。
40
47
 
41
48
 

2

追記

2021/11/01 03:27

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -1,17 +1,53 @@
1
- Accessで```DoCmd.GoToRecord , , acNewRec```を実行した場合、
1
+ Accessで```DoCmd.GoToRecord , , acNewRec```
2
+ を実行した場合、
2
3
  新しく追加される行が選択されます。
3
4
  一番目のフィールドがピンク色で囲まれ、
4
5
  残りのフィールドは水色になります。
5
6
  キーボードで入力した値は、一番目のフィールドに入力されます。(A)
6
7
 
8
+ しかし、サブフォームで
9
+ ```VBA
10
+ Private Sub Form_Load()
7
- しかし、サブフォームで```DoCmd.GoToRecord , , acNewRec```を
11
+ DoCmd.GoToRecord , , acNewRec
12
+ End Sub
13
+ ```
8
- 実行する場合、新しく追加される行の選択が不完全になります。
14
+ 実行する場合、新しく追加される行の選択が不完全になります。
9
15
  他のフィールドは水色になりますが、
10
- 一番目のフィールドがピンク色で囲まれず空白のままで、そのままではキーボードで入力しても、一番目のフィールドに入力されないので、クリックでその一番目のフィールドを選択しなければなりません。
16
+ 一番目のフィールドがピンク色で囲まれず、そのままではキーボードで入力しても、一番目のフィールドに入力されないので、クリックでその一番目のフィールドを選択しなければなりません。
17
+
18
+ ```VBA
11
- ```DoCmd.GoToRecord , , acLast```
19
+ DoCmd.GoToRecord , , acLast
20
+ ```
12
21
  を前に追加しても、同じでした。
13
22
  フォーカスの問題かな?と思い、親フォームの方に
23
+ ```VBA
24
+ Private Sub Form_Load()
14
- Me!(サブフォーム).SetFocus
25
+ Me!SubForm1.SetFocus
26
+ End Sub
27
+ ```
15
28
  と記載しましたが、同じです。
16
29
  どのようにすれば、冒頭で示した(A)の状態になるのでしょうか。
17
- よろしくお願いします。
30
+ よろしくお願いします。
31
+
32
+ (追記)
33
+ サブフォームのリンク親/子フィールドは設定されていません。
34
+ また親フォームにはサブフォームのほかはラベルがあるのみです。
35
+ ```DoCmd.GoToRecord , , acNewRec```
36
+ は、サブフォームのLoad時に実行しています。
37
+ サブフォームに新規行はあります。
38
+ データの追加もできます。
39
+ よろしくお願いします。
40
+
41
+
42
+ <レイアウト>
43
+ (親フォーム)
44
+ ラベル1 ラベル2
45
+ ラベル3
46
+
47
+ |列名A|列名B|
48
+ |:--|--:|
49
+ AA|00|
50
+ BB|01|
51
+ CC|02|
52
+
53
+ ↑サブフォーム

1

更新

2021/11/01 00:37

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,7 @@
4
4
  残りのフィールドは水色になります。
5
5
  キーボードで入力した値は、一番目のフィールドに入力されます。(A)
6
6
 
7
- しかし、サブフォームのテーブルで```DoCmd.GoToRecord , , acNewRec```を
7
+ しかし、サブフォームで```DoCmd.GoToRecord , , acNewRec```を
8
8
  実行する場合、新しく追加される行の選択が不完全になります。
9
9
  他のフィールドは水色になりますが、
10
10
  一番目のフィールドがピンク色で囲まれず空白のままで、そのままではキーボードで入力しても、一番目のフィールドに入力されないので、クリックでその一番目のフィールドを選択しなければなりません。