質問編集履歴

7

修正

2017/12/01 04:52

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -116,6 +116,10 @@
116
116
 
117
117
 
118
118
 
119
+ End Function
120
+
121
+
122
+
119
123
  ```
120
124
 
121
125
  '追記:

6

改善

2017/12/01 04:52

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,10 @@
1
1
  ###前提・実現したいこと
2
+
3
+ お世話になります。
4
+
5
+ 浅い知識でうまくいかず困ってます。。
6
+
7
+
2
8
 
3
9
  DataTable型のgetDataStorageにDBから取得したレコードを格納します。
4
10
 
@@ -48,9 +54,11 @@
48
54
 
49
55
 
50
56
 
57
+ Array型だとこのようなエラーになってしまう為ArrayList型にしたいです。
58
+
51
59
  'エラー Option Strict On では、遅延バインディングを使用できません。
52
60
 
53
- For Each bbb As DictionaryEntry In   DirectCast(arrDataStorage(rowsCount), Hashtable)
61
+ DirectCast(arrDataStorage(rowsCount), Hashtable)
54
62
 
55
63
 
56
64
 

5

修正

2017/12/01 04:42

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -46,13 +46,13 @@
46
46
 
47
47
  エラー BC30311 型 'String' の値を 'ArrayList' に変換できません。
48
48
 
49
- ```
49
+
50
50
 
51
51
  'エラー Option Strict On では、遅延バインディングを使用できません。
52
52
 
53
53
  For Each bbb As DictionaryEntry In   DirectCast(arrDataStorage(rowsCount), Hashtable)
54
54
 
55
- ```
55
+
56
56
 
57
57
  ```
58
58
 

4

追記

2017/12/01 04:33

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,13 @@
46
46
 
47
47
  エラー BC30311 型 'String' の値を 'ArrayList' に変換できません。
48
48
 
49
+ ```
49
50
 
51
+ 'エラー Option Strict On では、遅延バインディングを使用できません。
52
+
53
+ For Each bbb As DictionaryEntry In   DirectCast(arrDataStorage(rowsCount), Hashtable)
54
+
55
+ ```
50
56
 
51
57
  ```
52
58
 
@@ -56,15 +62,15 @@
56
62
 
57
63
  ```
58
64
 
59
- '共通処理
65
+ '共通処理 ☆ここをArrayからArrayListにしたい。
60
66
 
61
67
  Dim arr1 As Array
62
68
 
63
69
  arr1 = aaaa(引数1,引数2)
64
70
 
65
- 'ArrayList型2次元配列を作る関数
71
+ 'ArrayList型2次元配列を作る関数               ☆変更点As Array→ArrayListにしたい。
66
72
 
67
- Private Function aaaa(ByVal 引数1 As String,ByVal 引数2 As String)As Array
73
+ Private Function aaaa(ByVal 引数1 As String,ByVal 引数2 As String)As Array 
68
74
 
69
75
 
70
76
 
@@ -76,7 +82,7 @@
76
82
 
77
83
 
78
84
 
79
- 'ArrayList型の2次元配列であるarrDataStorageを宣言
85
+ 'ArrayList型の2次元配列であるarrDataStorageを宣言 ☆変更点 Array→ArrayListにしたい。
80
86
 
81
87
  Dim arrDataStorage(getDataStorage.Rows.Count - 1, getDataStorage.Columns.Count - 1) As ArrayList
82
88
 
@@ -106,7 +112,7 @@
106
112
 
107
113
  '追記:
108
114
 
109
- '何故String型の2次元配列なのではなく、ArrayList型の2次元配列を作りたい理由として、
115
+ '何故Array(String)型の2次元配列なのではなく、ArrayList型の2次元配列を作りたい理由として、
110
116
 
111
117
  '後ほど作ったArrayList型の2次元配列をここでHashtable型にキャストしてFor Eachを回したいからです。
112
118
 
@@ -116,7 +122,7 @@
116
122
 
117
123
     For Each aaa As DictionaryEntry In DirectCast(ArrayList型の変数(rowsCount), Hashtable)
118
124
 
119
-                       '☆ここでHashtableにキャストしたい
125
+                       '☆ここでHashtableにキャストしたいがArray型だとエラーになります。
120
126
 
121
127
  For Each bbb As DictionaryEntry In   DirectCast(arrDataStorage(rowsCount), Hashtable)
122
128
 
@@ -124,7 +130,7 @@
124
130
 
125
131
 
126
132
 
127
- 'Next
133
+ Next
128
134
 
129
135
 
130
136
 

3

訂正

2017/12/01 04:32

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -62,11 +62,9 @@
62
62
 
63
63
  arr1 = aaaa(引数1,引数2)
64
64
 
65
-
66
-
67
65
  'ArrayList型2次元配列を作る関数
68
66
 
69
- private Function aaaa(ByVal 引数1 As String,ByVal 引数2 As String)As Array
67
+ Private Function aaaa(ByVal 引数1 As String,ByVal 引数2 As String)As Array
70
68
 
71
69
 
72
70
 

2

追記

2017/12/01 04:25

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -36,6 +36,8 @@
36
36
 
37
37
 
38
38
 
39
+
40
+
39
41
  ###発生している問題・エラーメッセージ
40
42
 
41
43
 
@@ -53,6 +55,20 @@
53
55
  ###該当のソースコード
54
56
 
55
57
  ```
58
+
59
+ '共通処理
60
+
61
+ Dim arr1 As Array
62
+
63
+ arr1 = aaaa(引数1,引数2)
64
+
65
+
66
+
67
+ 'ArrayList型2次元配列を作る関数
68
+
69
+ private Function aaaa(ByVal 引数1 As String,ByVal 引数2 As String)As Array
70
+
71
+
56
72
 
57
73
  'DataTable型のgetDataStorageを宣言
58
74
 
@@ -84,6 +100,42 @@
84
100
 
85
101
 
86
102
 
103
+ Return arrDataStorage
104
+
105
+
106
+
107
+ ```
108
+
109
+ '追記:
110
+
111
+ '何故String型の2次元配列なのではなく、ArrayList型の2次元配列を作りたい理由として、
112
+
113
+ '後ほど作ったArrayList型の2次元配列をここでHashtable型にキャストしてFor Eachを回したいからです。
114
+
115
+ ```
116
+
117
+ For rowsCount = 0 To ArrayList型の変数.Count - 1
118
+
119
+    For Each aaa As DictionaryEntry In DirectCast(ArrayList型の変数(rowsCount), Hashtable)
120
+
121
+                       '☆ここでHashtableにキャストしたい
122
+
123
+ For Each bbb As DictionaryEntry In   DirectCast(arrDataStorage(rowsCount), Hashtable)
124
+
125
+
126
+
127
+
128
+
129
+ 'Next
130
+
131
+
132
+
133
+ Next
134
+
135
+
136
+
137
+ Next
138
+
87
139
  ```
88
140
 
89
141
 

1

修正

2017/12/01 04:24

投稿

xss
xss

スコア36

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,3 @@
1
- __イタリックテキスト__
2
-
3
1
  ###前提・実現したいこと
4
2
 
5
3
  DataTable型のgetDataStorageにDBから取得したレコードを格納します。
@@ -60,9 +58,7 @@
60
58
 
61
59
  Dim getDataStorage As New DataTable
62
60
 
63
- 'DBからレコードを取得
64
-
65
- getDataStorage = db.GETFUNCTION(引数1,引数2)
61
+ getDataStorage = DBからレコードを取得(引数1,引数2)
66
62
 
67
63
 
68
64