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

質問編集履歴

3

質問内容の訂正

2019/09/11 16:03

投稿

xss
xss

スコア36

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

質問内容の訂正

2019/09/11 16:03

投稿

xss
xss

スコア36

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

構成を訂正

2019/09/11 16:02

投稿

xss
xss

スコア36

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 <> newRecord Then
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