質問編集履歴

3

日本語がおかしかったので修正した

2021/12/22 14:53

投稿

uokaokabebe
uokaokabebe

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,93 +1,3 @@
1
- 現在Access VBAを勉強しております。
2
-
3
- こちらのテーブルのレコードにSQL文のINSERT INTO VALUESを利用してレコードを追加しようとしております。
4
-
5
- その際に下記のSQL文が表題にある通りエラーを起こしており、解決方法がよくわかりません。
6
-
7
- 問題のSQL文は下記のとおりです。
8
-
9
-
10
-
11
- Private Sub Touroku()
12
-
13
- Dim DB As DAO.Database
14
-
15
- Dim strSQL As String
16
-
17
-
18
-
19
- Set DB = CurrentDb
20
-
21
- 関連行 strSQL = "INSERT INTO G顧客情報(登録番号, 氏名, カナ氏名, 生年月日, 性別コード, 関係コード, 都道府県コード, 郵便番号, 住所, 勤務先, 電話番号, 携帯電話番号, PCメールアドレス, 携帯メールアドレス, 備考) " & _
22
-
23
- "VALUES(" & _
24
-
25
- DMax("登録番号", "G顧客情報") + 1 & " , " & _
26
-
27
- " ' " & Me.Tx氏名.Value & " ' , " & _
28
-
29
- " ' " & Me.Txカナ氏名.Value & " ' , " & _
30
-
31
- エラー該当行 " # " & Me.Tx生年月日 & "#, " & _
32
-
33
- Me.Cb性別コード.Value & " , " & _
34
-
35
- Me.Cb関係コード.Value & " , " & _
36
-
37
- Me.Cb都道府県コード.Value & " , " & _
38
-
39
- " ' " & Me.Tx郵便番号.Value & " ' , " & _
40
-
41
- " ' " & Me.Tx住所.Value & " ' , " & _
42
-
43
- " ' " & Me.Tx勤務先.Value & " ' , " & _
44
-
45
- " ' " & Me.Tx電話番号.Value & " ' , " & _
46
-
47
- " ' " & Me.Tx携帯電話番号.Value & " ' , " & _
48
-
49
- " ' " & Me.Txメールアドレス.Value & " ' , " & _
50
-
51
- " ' " & Me.Tx携帯メールアドレス.Value & " ' , " & _
52
-
53
- " ' " & Me.Tx備考.Value & " ' ) ; "
54
-
55
- DB.Execute strSQL
56
-
57
-
58
-
59
-
60
-
61
- DB.Close
62
-
63
- Set DB = Nothing
64
-
65
-
66
-
67
- End Sub
68
-
69
-
70
-
71
- 全文はこれですが、実際のエラーを起こしている部分は上記のエラー該当行のみとなっております。
72
-
73
- この部分と関連行と書かれている行の生年月日を削除すると問題なく追加が可能となっております。
74
-
75
- エラー文は
76
-
77
- 実行時エラー"3075"
78
-
79
- クエリ式 '# 'の日付の構文エラーです。
80
-
81
- と表示されております。
82
-
83
- お忙しいところ恐縮ですが、何卒エラーの原因と解決方法をご教授のほどよろしくお願いいたします
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
1
  現在Access VBAを勉強しております。
92
2
 
93
3
  こちらのテーブルのレコードにSQL文のINSERT INTO VALUESを利用してレコードを追加しようとしております。

2

日本語がおかしかったので修正した

2021/12/22 14:53

投稿

uokaokabebe
uokaokabebe

スコア1

test CHANGED
File without changes
test CHANGED
@@ -192,7 +192,7 @@
192
192
 
193
193
 
194
194
 
195
- しかし私の中でなぜnull値が入るとエラーになるのか、また、null値であってもエラーなくそのまま空欄で先に進んでほしいのですがどうすればよろしいのでしょうか?
195
+ しかし私の中でなぜnull値が入るとエラーになるのかわからないことに加えて、null値であってもエラーなくそのまま空欄で先に進んでほしいのですがどうすればよろしいのでしょうか?
196
196
 
197
197
 
198
198
 

1

イミディエイトウィンドウにSQL文の中身を表示させた

2021/12/22 14:44

投稿

uokaokabebe
uokaokabebe

スコア1

test CHANGED
File without changes
test CHANGED
@@ -81,3 +81,119 @@
81
81
  と表示されております。
82
82
 
83
83
  お忙しいところ恐縮ですが、何卒エラーの原因と解決方法をご教授のほどよろしくお願いいたします
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+ 現在Access VBAを勉強しております。
92
+
93
+ こちらのテーブルのレコードにSQL文のINSERT INTO VALUESを利用してレコードを追加しようとしております。
94
+
95
+ その際に下記のSQL文が表題にある通りエラーを起こしており、解決方法がよくわかりません。
96
+
97
+ 問題のSQL文は下記のとおりです。
98
+
99
+
100
+
101
+ Private Sub Touroku()
102
+
103
+ Dim DB As DAO.Database
104
+
105
+ Dim strSQL As String
106
+
107
+
108
+
109
+ Set DB = CurrentDb
110
+
111
+ 関連行 strSQL = "INSERT INTO G顧客情報(登録番号, 氏名, カナ氏名, 生年月日, 性別コード, 関係コード, 都道府県コード, 郵便番号, 住所, 勤務先, 電話番号, 携帯電話番号, PCメールアドレス, 携帯メールアドレス, 備考) " & _
112
+
113
+ "VALUES(" & _
114
+
115
+ DMax("登録番号", "G顧客情報") + 1 & " , " & _
116
+
117
+ " ' " & Me.Tx氏名.Value & " ' , " & _
118
+
119
+ " ' " & Me.Txカナ氏名.Value & " ' , " & _
120
+
121
+ エラー該当行 " # " & Me.Tx生年月日 & "#, " & _
122
+
123
+ Me.Cb性別コード.Value & " , " & _
124
+
125
+ Me.Cb関係コード.Value & " , " & _
126
+
127
+ Me.Cb都道府県コード.Value & " , " & _
128
+
129
+ " ' " & Me.Tx郵便番号.Value & " ' , " & _
130
+
131
+ " ' " & Me.Tx住所.Value & " ' , " & _
132
+
133
+ " ' " & Me.Tx勤務先.Value & " ' , " & _
134
+
135
+ " ' " & Me.Tx電話番号.Value & " ' , " & _
136
+
137
+ " ' " & Me.Tx携帯電話番号.Value & " ' , " & _
138
+
139
+ " ' " & Me.Txメールアドレス.Value & " ' , " & _
140
+
141
+ " ' " & Me.Tx携帯メールアドレス.Value & " ' , " & _
142
+
143
+ " ' " & Me.Tx備考.Value & " ' ) ; "
144
+
145
+ DB.Execute strSQL
146
+
147
+
148
+
149
+
150
+
151
+ DB.Close
152
+
153
+ Set DB = Nothing
154
+
155
+
156
+
157
+ End Sub
158
+
159
+
160
+
161
+ 全文はこれですが、実際のエラーを起こしている部分は上記のエラー該当行のみとなっております。
162
+
163
+ この部分と関連行と書かれている行の生年月日を削除すると問題なく追加が可能となっております。
164
+
165
+ エラー文は
166
+
167
+ 実行時エラー"3075"
168
+
169
+ クエリ式 '# 'の日付の構文エラーです。
170
+
171
+ と表示されております。
172
+
173
+ お忙しいところ恐縮ですが、何卒エラーの原因と解決方法をご教授のほどよろしくお願いいたします
174
+
175
+
176
+
177
+ 追記:
178
+
179
+
180
+
181
+ ご指摘を受けまして、イミディエイトウィンドウにstrSQLの中身を表示しました。
182
+
183
+ イミディエイトウィンドウには長いですが、
184
+
185
+ INSERT INTO G顧客情報(登録番号, 氏名, カナ氏名, 生年月日, 性別コード, 関係コード, 都道府県コード, 郵便番号, 住所, 勤務先, 電話番号, 携帯電話番号, PCメールアドレス, 携帯メールアドレス, 備考) VALUES(25 , ' 岡 ' , ' オカ ' , # 2021/12/04#, 1 , 1 , 1 , ' 1111111 ' , ' 東京 ' , ' かながわ ' , ' 000000 ' , ' 000000 ' , ' 000000 ' , ' 00000 ' , ' 00000 ' ) ;
186
+
187
+ と表示されました。
188
+
189
+ また、日付をフォームのコントロール(Me.Tx生年月日)の中に正しく入力してみたところ問題なく追加できました。
190
+
191
+ どうやら空欄のまま追加ボタンを押下して生年月日フィールドにnull値が入ったことがエラーの原因らしいです。
192
+
193
+
194
+
195
+ しかし私の中でなぜnull値が入るとエラーになるのか、また、null値であってもエラーなくそのまま空欄で先に進んでほしいのですがどうすればよろしいのでしょうか?
196
+
197
+
198
+
199
+ お時間ございましたら何卒ご教授のほどよろしくお願いいたします。