|
いつもお世話になっております。
CSVファイルを取り込み、9列あるデータを、
H、I、A、B、C、D、E列の順番でソートしたところ、
1148
1292
1544
1700
2096
2348
248
2492
2600
2744
2996
3392
3548
3800
3944
4196
4448
4592
4844
500
644
896
92
のように一桁目でソートされてしまい、実際の数字とは関係なくソートされてしまいました。
調べたところ、文字列で扱われているため、桁数が違うとこのようになることはわかったのですが、
実際の解決法まではわかりませんでした。。
方法を教えていただけると助かります。
いらないかもしれませんが、以下ソースです。
'---ワークシートへ取り込んだデータを以下の項目でソートする(すべて昇順)---
With Worksheets("newSheet")
.Activate
With .Range(Cells(1, 1), Cells(5000, 9))
'優先度7の列を昇順ソート
.Sort Key1:=Worksheets("newSheet").Cells(1, 5), order1:=xlAscending
'優先度4、5、6を昇順ソート
.Sort Key1:=Worksheets("newSheet").Cells(1, 2), order1:=xlAscending, _
Key2:=Worksheets("newSheet").Cells(1, 3), order2:=xlAscending, _
Key3:=Worksheets("newSheet").Cells(1, 4), order3:=xlAscending
'優先度1、2、3を昇順ソート
.Sort Key1:=Worksheets("newSheet").Cells(1, 8), order1:=xlAscending, _
Key2:=Worksheets("newSheet").Cells(1, 9), order2:=xlAscending, _
Key3:=Worksheets("newSheet").Cells(1, 1), order3:=xlAscending
End With
End With
|
|