- ベストアンサー
エクセルで列の並べ替えを一気にしたいのですが出来ますでしょうか?
エクセルで列の並べ替えを一気にしたいのですが出来ますでしょうか? 以下のように通常1列切り取って列挿入を何回もすれば出来るのですが 一気に複数列をABCDE列をCEADB列のように一度に並べ換え出来たらと思います。 Columns("G:G").Cut Columns("C:C").Insert Shift:=xlToRight 行数はその都度異なります。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
1) 下記表を並び替えの対象、と仮定した場合に、 質問者様が意図したい「並び替えの条件」とは何でしょう? イ.(A列)~(R列)を任意に(ランダムに)並び替えしたい? ロ.(1行目)~(3行目)いずれか行に入っている値にもとづく昇順ないし降順ソート? . 都度並び替えの順番が違う イ の方法の場合、 希望される順番を1から順に採番した結果を 1~3行目以外の(n行目)に入れて 行列変換したあと「(n行目)に対するデータ>並び替え」をすれば 並び替えの行為自体は1回ですむと思いますが、いかがでしょうか? (A列) (B列) (C列) (D列) (E列) (F列) (G列) (H列) (I列) (J列) (K列) (L列) (M列) (N列) (O列) (P列) (Q列) (R列) (1行目) 3 4 1 5 2 18 17 16 15 14 13 12 11 10 9 8 7 6 (2行目) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 (3行目) 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
その他の回答 (3)
- popuplt
- ベストアンサー率38% (31/81)
>「データ>並び替え」だと列が多すぎて不都合です。 何が不都合なのでしょうか? 列が多くても「データ>並べ替え」の並べ替えオプションで方向を「列単位」にするだけでいいのでは?並び替える順番がきまっているなら、SORTキーの行を作って番号を入れておけば一回で済むと思います。Excelのバージョンによっては出来ないかも?
お礼
回答有難う御座いました。 並び替える順番がきまっています。 データレコードを毎回読み込んできてそこから列並べ替えをします。 採番するにはマクロで例えば各1行目セルに採番し並べ換えれば出来るかもしれないです。 やってみます。
- samtomsan
- ベストアンサー率55% (1060/1897)
いつも同じ並び替えなら、マクロの記録を働かせて、手動で18列を入れ替え、マクロを終了してそのマクロを以後しようすれば良いと思います。 都度並び替えの順番が違うのなら手作業しかありませんね。
お礼
回答有難う御座いました。 いつも同じ並び替えになります。 1列づつ切って列を挿入していく方法はわかったのですが 一気に並べ換えられる方法があればと
- sarjan
- ベストアンサー率33% (1/3)
マクロによらない方法で考えてみました。 1) 下記表を並び替えの対象、と仮定します。 A B C D E (1行目) 3 4 1 5 2 (2行目) 1 2 3 4 5 (3行目) 1 2 3 4 5 2)上記範囲を指定してから 編集>形式を選択して貼り付け>貼り付け=値、演算=しない、行列入れ替えにチェック (1行目) (2行目) (3行目) A 3 1 1 B 4 2 2 C 1 3 3 D 5 4 4 E 2 5 5 3) (1行目)を並び替えの対象として「データ>並び替え」をする。 (1行目) (2行目) (3行目) C 1 3 3 E 2 5 5 A 3 1 1 B 4 2 2 D 5 4 4 4)上記範囲を指定してから 編集>形式を選択して貼り付け>貼り付け=値、演算=しない、行列入れ替えにチェック C E A B D (1行目) 1 2 3 4 5 (2行目) 3 5 1 2 4 (3行目) 3 5 1 2 4 ご質問の意図に沿っているでしょうか?
お礼
回答有難う御座いました。 すいません説明不足で。実際には18列を並べ替えたいと思っていますので 「データ>並び替え」だと列が多すぎて不都合です。
お礼
回答有難う御座いました。 いつも同じ並び替えになります。 データレコードを毎回読み込んできてそこから列並べ替えをします。 採番するにはマクロで例えば各1行目セルに採番し並べ換えれば出来るかもしれないです。 やってみます。