お疲れ様です。
Takkoです。
VBAで現在ツールを作成しているものです。
現在フォーム内には、
List.Boxがあり、決められた名前のファイルが格納されています。
現在、自動ソート?なのかは分かりませんが、名前順になっています。
ListBoxには
例えばこんなファイルがあります。
ABC.test_解析0524.pdf
ABC.test_解析0525.pdf
【ABC】test_log0524.pdf
【ABC】test_log0525.pdf
【ABC】test_sql0524.pdf
【ABC】test_sql0525.pdf
これは現在名前順でソートされていると思いますが、
例えばこれを以下のようにソートしたい場合、どのような処理を施せばよいでしょうか。
【ABC】test_sql0524.pdf
【ABC】test_sql0525.pdf
【ABC】test_log0524.pdf
【ABC】test_log0525.pdf
ABC.test_解析0524.pdf
ABC.test_解析0525.pdf
フォームに新規でソートというボタンを配置し、
上記のソート順に並び替えたいのですが、
名前順ではないし、ListBoxの配列順でもないため、
どのようにソートすればよいか分かりません。
ファイル名を取得することは出来るので、
取得したファイル名に条件付で名前順ソートをすれば可能だと思うのですが、
やり方がいまいちわかりません。
VBA
1private Sub sortBtn_Click() 2 //試験用にListBoxへ格納 3 listBox1.AddItem "ABC.test_解析0524.pdf" 4 listBox1.AddItem "ABC.test_解析0525.pdf" 5 listBox1.AddItem "【ABC】test_log0524.pdf" 6 listBox1.AddItem "【ABC】test_log0525.pdf" 7 listBox1.AddItem "【ABC】test_sql0524.pdf" 8 listBox1.AddItem "【ABC】test_sql0525.pdf" 9 //ソート処理 10 //全く分からない。listBox1.Sorted? 11 12End Sub
一応ロジックで考えると、
ACC.test_解析のグループ
【ABC】test_log0524のグループ
【ABC】test_sql0524のグループ
で三つに切り分けて、
その三つを指定の文字列を含むものから優先に名前順ソートして、
ListBoxに入れなおせばよいのだとは思いますが・・・。
間違っていたらすいません。
アドバイス、お願いします。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/25 05:38
2017/05/25 05:40
2017/05/25 05:44
2017/05/25 05:48
2017/05/25 06:17
2017/05/25 06:19
2017/05/25 06:21
2017/05/25 06:22
2017/05/25 06:23
2017/05/25 06:24
2017/05/25 06:29
2017/05/25 06:30
2017/05/25 06:32
2017/05/25 06:35
2017/05/25 06:41
2017/05/25 06:46
2017/05/25 06:46
2017/05/25 06:47
2017/05/25 06:49
2017/05/25 08:31
2017/05/25 08:48
2017/05/25 09:04
2017/05/25 23:35