任意の順番で並び替えするには?

解決


GT-APPLE  2010-06-23 12:56:23  No: 146934  IP: [192.*.*.*]

ソートのやり方で悩んでいます。やりたいことは、指定された範囲の文字が入ったセルをソートし、その際に並び替えの順番を任意の順番で指定したいというものです。
例えば、A1のセルに「い」、A2のセルに「え」、A3のセルに「あ」、A4のセルに「う」と入っているデータをソートしようとした場合、通常であれば、A1からA4まで順にあ→い→う→え、となると思いますが、これをあ→え→う→い、というような通常とは違う順番にしたいのです。エクセルのオプションにあるユーザ設定リストに登録すればいいかとも思ったのですが、これもうまくいかず、また使用する端末が特定多数のため全ての端末に登録するのも難しい状況です。ちなみに現在は以下のようなコードを作っています。

    Selection.Sort Key1:=Range("A1"), Order1:=xlDescending, Key2:=Range( _
        "C1"), Order2:=xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:= _
        False, Orientation:=xlTopToBottom, SortMethod:=xlStroke

      ※A1を昇順、C1を降順のキーとしています。

なお、開発環境はWinXP+Excel2003ですが、使用環境はWin2000+Excel2000も混在しています。当方かなり初心者入っていますが、ご教授頂ければ幸いですので、宜しくお願い致します。

編集 削除
無理  2010-06-23 15:38:10  No: 146935  IP: [192.*.*.*]

上のような質問に明快に答えられてこそ上級者の称号が
もらえるのですね。
愚鈍なあだしには無理です。

編集 削除
56375122  2010-06-23 16:40:24  No: 146936  IP: [192.*.*.*]

>あ→え→う→い
どんなルールがあるか知らないけど、変換表でもつくって
1→2→3→4 とかに読み替えた列を E とか F に追加して、
その列で並び替えてやればいいだけではないの?

>開発環境はWinXP+Excel2003
ここは Visual Basic .NET の掲示板なので板違いだけどね。

編集 削除
GT=APPLE  2010-06-23 19:07:55  No: 146937  IP: [192.*.*.*]

56375122 様

そうですね。そういうやり方があるんですよね。
ちょっとしたアイデアなのに全然思いつきませんでした。。。
おかげ様でうまくいきました。
ありがとうございます!!

愚鈍なのは質問者本人でした(T_T)
おまけに板違い・・・重ね重ね失礼致しましたm(_ _)m

編集 削除