
Excel2003を使っています。
【例】
A1:N530の表の中の一部分D1:I530範囲(6列で530行)部分のみを
列単位で一括で並べ替えしたいと思っております。
D1:I530範囲には6列に23、96、11、106、72、49といったように530行全てランダムに数値が入っております。これを各行毎に全て左から昇順に530行分一括並べ替えしたいということでございます。
エクセル機能の「データ」→「並べ替え」→「現在選択する範囲を並べ替える」→「オプション」→「列単位」を指定して列単位に並べ替えは出来たのですが1行ずつしかソート出来ません。
このやり方では530回並べ替え作業をすることになり、時間的に余裕がないのでこの場合にExcel2003の機能で一括で530行分を列単位でもって左から並べ替えをする方法があるでしょうか?
ちなみにExcel2007もまだ使ったことないですが所持しています。
仕事上緊急でご質問させていただいております。是非助けてください。
No.4ベストアンサー
- 回答日時:
>セル背景色も一緒にソート移動されているかなと思った・・・・・
下記マクロを試してください。
Sub test1()
Dim r As Range
Dim srng As Range
Set srng = Range("D1:D530")
For Each r In srng
'列単位昇順並べ替え
r.Resize(, 6).Sort Key1:=r, _
Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlLeftToRight, _
SortMethod:=xlPinYin, DataOption1:=xlSortNormal
Next
End Sub
一瞬で解決いたしました。
本当にありがとうございました。
まさかマクロでの御指導が来るとは想像もしていなかったですが、これを機会に自身もマクロの勉強努力いたします。
No.3
- 回答日時:
D E F G H I … O P Q R S T
1 23 96 11 106 72 49 … 11 23 49 72 96 106
2 340 490 351 216 423 477 … 216 340 351 423 477 490
3 239 211 224 448 155 432 … 155 211 224 239 432 448
… … … … … … … … … … … … …
528 423 482 221 491 21 239 … 21 221 239 423 482 491
529 125 334 159 436 185 73 … 73 125 159 185 334 436
530 330 62 438 132 291 448 … 62 132 291 330 438 448
1.セル O1 に次式を入力して、これを右方に5列ドラッグ&ペースト
2.範囲 O1:T1 を下方にズズーッとドラッグ&ペースト
(上表はその結果を示している)
3.そのままの状態で、[コピー]した後で、そのまンま[値の貼り付け]
4.そのままの状態で、Ctrl+Xキーを「エイヤッ!」と叩き付け
5.セル D1 を選択して、Ctrl+Vキーを「エイヤッ!」と叩き付け
No.2
- 回答日時:
一例です。
(1)データシートをsheet1、抽出シートをsheet2として、sheet2のA1に
=SMALL(Sheet1!$D1:$I1,COLUMN(A1))として右方向に6列分コピー
(2)sheet2のA1:F1を選択→下方向に530行分コピー
(3)sheet2の並び替え範囲を選択、コピー→データシートのD1を選択→形式を選択して貼り付け→値を選択→OK
この回答への補足
大変ありがとうございました。
ものすごく参考になり実践してみました。
こちらの関数で並べ替えが出来ました!
一転、補足し漏れておりました問題もございました。
数値データは=SMALL(Sheet1!$D1:$I1,COLUMN(A1))関数で並べ替えられましたが、実はこのデータ類には決められた数字に対して決められたセル色が複数色に渡り全ての数字に塗られております。セル背景色も一緒にソート移動されているかなと思ったのですがソートした時点でセル色だけ各セルバラバラになってしまいました。
解決出来るでしょうか?
助けてください。よろしくお願い申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) [並べ替えの前に]、[選択範囲を拡張する]のが煩わしいッ! 1 2023/02/28 22:40
- Excel(エクセル) Googleスプレッドシートの割合の関数と円グラフの並べ替えについて 1 2022/07/22 17:31
- Excel(エクセル) 範囲指定をした中で、住所の列をユーザー設定の並べ替えをしたい 3 2022/05/15 13:51
- その他(Microsoft Office) エクセルで串刺ししたシートの並べ替えをしたいです 4 2023/02/14 11:59
- Excel(エクセル) Excelのソート(並べ替え) 2 2022/05/15 22:54
- その他(Microsoft Office) 逆順 3 2023/08/24 09:30
- Excel(エクセル) Excelで、行に複数の数字が入力されているセルが複数の列存在し、行を跨いでセル内の数値を並び替える 5 2022/06/17 18:03
- Excel(エクセル) 結合セルのソートについて 5 2022/04/22 11:57
- Excel(エクセル) Excel 郵便番号順に並び変えたい 同じ番号が複数あるとき 4 2022/04/28 18:35
- Visual Basic(VBA) Excel VBAで並べ替えをしたい 3 2023/02/25 09:31
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで隣のセルと同じ内容に列...
-
値の入っているセルのうち、一...
-
更新前と更新後の差分をVBAを使...
-
SUMPRODUCT関数 行が増えても...
-
エクセルで何種類のデータがあ...
-
エクセルの並べ替え
-
エクセルで・・・
-
複数の候補列から、検索値と一...
-
エクセル 担当者ごとにブラン...
-
エクセル 正解率
-
Excel関数:「0」を除いた標準...
-
エクセルVBA AdvancedFilterの...
-
空白セルと行に色をつけるVBA E...
-
エクセルでデータ照合の仕方
-
エクセル、正数のみの集計[(負...
-
ピボットで複数の区切りでグル...
-
VLOOKUP関数で検索範囲を2つの...
-
【エクセル】区切り位置で分割...
-
エクセルVBAを使ってセルに日付...
-
エクセル関数countifの初歩的な...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで隣のセルと同じ内容に列...
-
【エクセル】区切り位置で分割...
-
更新前と更新後の差分をVBAを使...
-
Excel関数:「0」を除いた標準...
-
SUMIFで数値が入力されているセ...
-
値の入っているセルのうち、一...
-
Excel関数で、範囲内の最後のセ...
-
ピボットテーブル 0個の行を...
-
エクセル、正数のみの集計[(負...
-
エクセルに入力された日付「S40...
-
入力するとかってにセルの色が...
-
《エクセル2000》重複している...
-
エクセル 8ケタの数字から日数...
-
エクセルで何種類のデータがあ...
-
SUMPRODUCT関数 行が増えても...
-
Excelのマクロで行を間引きたい
-
複数の候補列から、検索値と一...
-
エクセルVBAを使ってセルに日付...
-
エクセルで電話番号を - で分...
-
Excelで複数列かつ複数行分の一...
おすすめ情報