[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『並べ替え』(二郎)
A列を並べ替えをして、B列のようにしたいのですが教えてください。 書式はすべて標準でAB-CDまでは同じです。
A B 1 AB-CDE AB-CDE 2 AB-CDE-FG AB-CDE 3 AB-CDF AB-CDF 4 AB-CDE AB-CDEFGH 5 AB-CDEFGH AB-CDEFGH 6 AB-CDEFGI AB-CDEFGI 7 AB-CDEFGH AB-CDE-FG 8 AB-CDE-FG AB-CDE-FG 9 AB-CDE-FG AB-CDE-FG
>B列のようにしたい
> 3 AB-CDF AB-CDF > 4 AB-CDE AB-CDEFGH ↑ この順(Fの次にE が来る)がミスでないなら、 並べ替えのルールを言葉でご説明いただけませんか?
推測はできますが、確信が持てません。 (早押しクイズが好きな回答者もいますけど)
(半平太) 2012/12/03 09:10
Sub test()
Dim i As Long
Columns("A").Replace What:="-", Replacement:="z"
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row Cells(i, "A").Value = String(20 - Len(Cells(i, "A").Value), "!") & Cells(i, "A").Value Next i
Columns("A").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1 Columns("A").Replace What:="z", Replacement:="-" Columns("A").Replace What:="!", Replacement:="" End Sub
(???)
B1 =(LEN(A1)-LEN(SUBSTITUTE(A1,"-",)))*1000+LEN(A1) 下へコピー。
B列昇順、A列昇順の順番設定で並び替え。
※@「-」の数 A文字数 Bアルファベット順 の降順順位考えで並び設定。
(GobGob)
半平太様、???様、GobGob様ありがとうございました。 半平太様 AB-CDEFGH ↑ >この順(Fの次にE が来る)がミスでないなら、 >並べ替えのルールを言葉でご説明いただけませんか?
紛らわしくてすみません。これで間違いではありません。 さらに質問ですが、C列に数値がありB列の種類に合わせて降順に並べ替え するにはどのような手段がありますか?教えてください。
B C 1 AB-CDE 1.2 2 AB-CDE 1.4 3 AB-CDF 3.0 4 AB-CDEFGH 2.8 5 AB-CDEFGH 1.3 6 AB-CDEFGI 0.55 7 AB-CDE-FG 1.37 8 AB-CDE-FG 1.21 9 AB-CDE-FG 0.7
(二郎)
C1 =(LEN(A1)-LEN(SUBSTITUTE(A1,"-",)))*1000+LEN(A1) 下へコピー。
C列昇順、A列昇順、B列降順 の順番設定で並び替え。
(GobGob)
並べ替えのルールを言葉でご説明いただけませんか?
すみませんでした。もう一度説明をやり直します。 以下A列の並べ替えのルールは、文字の長さが短い方を上にして、アルファベット順 でなくても構いません。 B列の数値はA列の種類に応じて降順に並べ替え、→から右のように並べ替えを したいでのですがご指導おねがいします。
A B → A B 1 AB-CDE 1.2 AB-CDE 1.4 2 AB-CDE-FG 1.37 AB-CDE 1.2 3 AB-CDF 3.0 AB-CDF 3.0 4 AB-CDE 1.4 AB-CDEFGH 2.8 5 AB-CDEFGH 1.3 AB-CDEFGH 1.3 6 AB-CDEFGI 0.55 AB-CDEFGI 0.55 7 AB-CDEFGH 2.8 AB-CDE-FG 1.37 8 AB-CDE-FG 0.7 AB-CDE-FG 1.21 9 AB-CDE-FG 1.21 AB-CDE-FG 0.7
(二郎)
GobGobさんの回答で旨くいきました。ありがとうございました。 (二郎)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.