回答編集履歴

8

コメント修正

2016/09/04 11:16

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -56,7 +56,9 @@
56
56
 
57
57
  '繰り返し文の記載(不十分な点です)
58
58
 
59
- For count = 0 To answer.Length - 1
59
+ 'For count = 0 To 4
60
+
61
+ For count = 0 To answer.Length - 1 '配列などのループ処理上限は要素数(LengthやCount)から取得する方が変更に強い
60
62
 
61
63
  Select Case RadioButtonList.SelectedValue
62
64
 

7

コメント修正

2016/09/04 11:16

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -86,6 +86,10 @@
86
86
 
87
87
  Dim strSQL As String
88
88
 
89
+
90
+
91
+ ' 下記SQLのanswer(5)は余計では?
92
+
89
93
  ' strSQL = "INSERT INTO tbl_testRg" &
90
94
 
91
95
  ' " (ID, result1, result2, result3, result4, result5, date)" &

6

コード修正

2016/09/04 11:02

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -42,13 +42,15 @@
42
42
 
43
43
 
44
44
 
45
- ```VB
45
+ ``` VB
46
46
 
47
47
  ' ソース引用一部修正
48
48
 
49
- 'Dim answer(4) As Boolean 'データ型はどうすれば?
50
49
 
50
+
51
+ 'Dim answer(4) As Boolean
52
+
51
- Dim answer(5) As String
53
+ Dim answer(4) As String
52
54
 
53
55
 
54
56
 
@@ -80,7 +82,7 @@
80
82
 
81
83
 
82
84
 
83
- 最後にtbl_testRgにデータを格納します
85
+ '最後にtbl_testRgにデータを格納します
84
86
 
85
87
  Dim strSQL As String
86
88
 
@@ -90,7 +92,9 @@
90
92
 
91
93
  ' " VALUES(" & newid & "," & answer(0) & "," & answer(1) & "," & answer(2') & "," & answer(3) & "," & answer(4) & "," & answer(5) & "," & dtToday & ")"
92
94
 
95
+
96
+
93
- strSQL = "INSERT INTO tbl_testRg" &
97
+ strSQL = "INSERT INTO tbl_testRg" &
94
98
 
95
99
  " (ID, result1, result2, result3, result4, result5, date)" &
96
100
 

5

コード修正2

2016/09/04 10:59

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -74,4 +74,26 @@
74
74
 
75
75
  Next count
76
76
 
77
+
78
+
79
+ '中略
80
+
81
+
82
+
83
+ 最後にtbl_testRgにデータを格納します
84
+
85
+ Dim strSQL As String
86
+
87
+ ' strSQL = "INSERT INTO tbl_testRg" &
88
+
89
+ ' " (ID, result1, result2, result3, result4, result5, date)" &
90
+
91
+ ' " VALUES(" & newid & "," & answer(0) & "," & answer(1) & "," & answer(2') & "," & answer(3) & "," & answer(4) & "," & answer(5) & "," & dtToday & ")"
92
+
93
+ strSQL = "INSERT INTO tbl_testRg" &
94
+
95
+ " (ID, result1, result2, result3, result4, result5, date)" &
96
+
97
+ " VALUES(" & newid & "," & answer(0) & "," & answer(1) & "," & answer(2) & "," & answer(3) & "," & answer(4) & "," & "," & dtToday & ")"
98
+
77
99
  ```

4

回答修正

2016/09/04 10:55

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -27,3 +27,51 @@
27
27
  End If
28
28
 
29
29
  ```
30
+
31
+ **上記回答は見当違いなので忘れて下さい。**
32
+
33
+
34
+
35
+ ---
36
+
37
+ 今気づいたんですが、
38
+
39
+ 配列のインデックス指定がそもそもの原因ではないでしょうか?
40
+
41
+ 下のように変更したらどうなりますか?
42
+
43
+
44
+
45
+ ```VB
46
+
47
+ ' ソース引用一部修正
48
+
49
+ 'Dim answer(4) As Boolean 'データ型はどうすれば?
50
+
51
+ Dim answer(5) As String
52
+
53
+
54
+
55
+ '繰り返し文の記載(不十分な点です)
56
+
57
+ For count = 0 To answer.Length - 1
58
+
59
+ Select Case RadioButtonList.SelectedValue
60
+
61
+ Case 1
62
+
63
+ answer(count) = "1"
64
+
65
+ Case 0
66
+
67
+ answer(count) = "0"
68
+
69
+ Case Else
70
+
71
+ answer(count) = "NULL"
72
+
73
+ End Select
74
+
75
+ Next count
76
+
77
+ ```

3

コメント修正2

2016/09/04 10:49

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
 
24
24
 
25
- Dim l = i.Value ' こうするとBoolean値で取り出せる
25
+ Dim l = i.Value ' こうするとBoolean型として取り出せる
26
26
 
27
27
  End If
28
28
 

2

コメント修正

2016/09/04 08:06

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  If i.HasValue Then
20
20
 
21
- ' 値がNullでない場合
21
+ ' 値がNull(VBはNothing)でない場合
22
22
 
23
23
 
24
24
 

1

コード追記

2016/09/04 07:56

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -1 +1,29 @@
1
1
  [Null許容型](https://msdn.microsoft.com/ja-jp/library/cc441755(v=vs.90).aspx)のBoolean型を使ってみてはどうでしょうか?
2
+
3
+
4
+
5
+ ``` VB
6
+
7
+ ' 宣言方法
8
+
9
+ Dim i As Boolean?
10
+
11
+ Dim j? As Boolean
12
+
13
+ Dim k As Nullable(Of Boolean)
14
+
15
+
16
+
17
+
18
+
19
+ If i.HasValue Then
20
+
21
+ ' 値がNullでない場合
22
+
23
+
24
+
25
+ Dim l = i.Value ' こうするとBoolean値で取り出せる
26
+
27
+ End If
28
+
29
+ ```