- ベストアンサー
エクセルのデータ並べ替え
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
No.1です。 私もそれほど詳しくはありませんが、自動記録で作ったものに下記の2つを書き加えてみましたのでためしてください。 1.1列ソートし終わったら自動的に右の列に移動して繰り返す。(したがって一番左の列の1行目から開始すること。) 2.一行目が空白セルの列まで移動すると自動的にマクロを停止する。 ※添付画像のようにどの列も一律に12行までの場合です。 (行数が違うときは「12」を書き替えてください。行数が一律でないときはとりあえず一番多い数に書き替えれば問題ないと思います。) 【マクロ】 Sub Macro1() Do While ActiveCell.Value <> "" ActiveCell.Range("A1:A12").Select Selection.Sort Key1:=ActiveCell, Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _ :=xlPinYin ActiveCell.Offset(0, 1).Range("A1").Select Loop End Sub
その他の回答 (1)
とりあえず1列分のソートのマクロを作るのがいちばん簡単ではないでしょうか。 そうすれば1列ソートするのに1秒もかかりません。 添付画像の程度なら10秒もあれば終わるかと。 それでも面倒で、しかも以後その処理を再三行うというのなら、自動で隣の列に移って繰り返し、自動でストップさせるマクロということになりますね。
補足
すいません、ご回答いただいたのですがそのマクロの作り方が わかりません。 もう1点、実際には2000列以上を並べ替えます。 もし、お時間があれば自動で隣の列に移って自動でストップという マクロの構文をお教えいただけないでしょうか?
お礼
ご回答ありがとうございました。 ここ10日ほどいろいろあって内容を確かめる時間がとれませんでした。やってみたらうまく行きました。 遅くなりましてすいません。ホントにありがとうございました。