質問編集履歴
3
質問内容の訂正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
### 前提・実現したいこと
|
|
2
2
|
|
|
3
3
|
VBAで取り込んだcsvファイルのデータをソートしたいのですがうまくいきません。
|
|
4
|
-
3列目の数字をキーにしてソートを行ってからデータを扱いたいです。
|
|
4
|
+
3列目の数字をキーにして昇順ソートを行ってからデータを扱いたいです。
|
|
5
5
|
|
|
6
6
|
よろしければソートの手法やソートが実現できるコードを教えて頂けませんでしょうか。
|
|
7
7
|
お手数お掛けいたしますがご教授をよろしくお願いします。
|
2
質問内容の訂正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -16,15 +16,7 @@
|
|
|
16
16
|
"藤田","男","102","大阪"
|
|
17
17
|
"三田","女","106","愛媛"
|
|
18
18
|
"園田","女","105","愛媛"
|
|
19
|
-
|
|
19
|
+
|
|
20
|
-
"前田","男","101","北海道"
|
|
21
|
-
"藤田","男","102","大阪"
|
|
22
|
-
"山田","女","103","福岡"
|
|
23
|
-
"栗田","男","103","東京"
|
|
24
|
-
"富田","男","104","神奈川"
|
|
25
|
-
"園田","女","105","愛媛"
|
|
26
|
-
"村田","男","106","沖縄"
|
|
27
|
-
"三田","女","106","愛媛"
|
|
28
20
|
### 該当のソースコード
|
|
29
21
|
|
|
30
22
|
```
|
1
構成を訂正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -3,9 +3,7 @@
|
|
|
3
3
|
VBAで取り込んだcsvファイルのデータをソートしたいのですがうまくいきません。
|
|
4
4
|
3列目の数字をキーにしてソートを行ってからデータを扱いたいです。
|
|
5
5
|
|
|
6
|
-
ソートを行った後、3列目の数字を重複しない形でカウントをとる予定です。
|
|
7
|
-
|
|
8
|
-
よろしければ手法やコードを教えて頂けませんでしょうか。
|
|
6
|
+
よろしければソートの手法やソートが実現できるコードを教えて頂けませんでしょうか。
|
|
9
7
|
お手数お掛けいたしますがご教授をよろしくお願いします。
|
|
10
8
|
|
|
11
9
|
csvファイルはテキストファイルで作成し拡張子をcsvにしております。
|
|
@@ -18,7 +16,7 @@
|
|
|
18
16
|
"藤田","男","102","大阪"
|
|
19
17
|
"三田","女","106","愛媛"
|
|
20
18
|
"園田","女","105","愛媛"
|
|
21
|
-
■想定している結果
|
|
19
|
+
■ソートによって想定している結果
|
|
22
20
|
"前田","男","101","北海道"
|
|
23
21
|
"藤田","男","102","大阪"
|
|
24
22
|
"山田","女","103","福岡"
|
|
@@ -48,15 +46,18 @@
|
|
|
48
46
|
Set FSO = CreateObject("Scripting.FileSystemObject")
|
|
49
47
|
Set dataFile = FSO.OpenTextFile(pfilePath)
|
|
50
48
|
|
|
49
|
+
'ここが焦点になります。
|
|
50
|
+
'********************************
|
|
51
51
|
'ここの処理でソートを試みてみました。
|
|
52
52
|
dataFile.sort
|
|
53
53
|
Key := Range("C1"), _
|
|
54
54
|
Order := xlAscending
|
|
55
|
+
'********************************
|
|
55
56
|
|
|
56
57
|
Do while readCSV(dataFile,fileDataTable)
|
|
57
58
|
|
|
58
59
|
newRecord = fileDataTable(COLNUM - 1)
|
|
59
|
-
If agoRecord
|
|
60
|
+
If agoRecord = newRecord Then
|
|
60
61
|
cntStorage = cntStorage + 1
|
|
61
62
|
End If
|
|
62
63
|
|
|
@@ -67,7 +68,6 @@
|
|
|
67
68
|
CntConfirmation = True
|
|
68
69
|
End Function
|
|
69
70
|
```
|
|
70
|
-
'cntStorage = 6
|
|
71
71
|
|
|
72
72
|
### 補足情報(FW/ツールのバージョンなど)
|
|
73
73
|
|