- 締切済み
Excel VBAで範囲選択後にソートしたい
OS: Windows 2000 ソフトウェア名/バージョン:Excel2000 Excelマクロで以下のような処理をしたいのですが、どのように記述したらよいのでしょうか? マクロの記述例を教えてください。 (1)Excelの複数シート上にデータがA列とB列に以下のように並んでいる。 ※以下の例の場合、3行~6行はグループ01、8行~12行はグループ02、~ (2)グループ行単位の範囲指定を実行し、その中でB列のソートを実行したい。 (3)データ行の行数、グループの数はシートごとにばらばらで決まっていない。 (4)A列のデータ行は上4桁がブランク、グループ行は上2桁がブランクとなっている。 (5)B列には数値しか入っていない。 【行数】 【A列】 【B列】 (01行) タイトル行1 (02行) タイトル行2 (03行) △△△△データ01 数値(78979) (04行) △△△△データ02 数値(34533) (05行) △△△△データ03 数値(21423) (06行) △△△△データ04 数値(51343) (07行) △△グループ01 (08行) △△△△データ11 数値(43522) (09行) △△△△データ12 数値(23432) (10行) △△△△データ13 数値(42312) (11行) △△△△データ14 数値(24123) (12行) △△△△データ15 数値(54343) (13行) △△グループ02 (14行) △△△△データ21 数値(64353) (15行) △△△△データ22 数値(42343) ~ ◆上記の例でやりたいこと: 1:データ行の最初の行(03行)から最初のグループ行を探してその1行前(06行)までを範囲指定してB列の数値でソート 2:最初のグループ行の次の行(08行)から次のグループ行を探してその1行前(12行)までを範囲指定してB列の数値でソート 3:2のグループの次の行(14行)から~以下、データの最終行まで処理する。 以上、よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- freemank
- ベストアンサー率75% (3/4)
『マクロの記録』を使ってみてはどうでしょう? (1)マクロの記録を開始(適当に名前を設定) (2)B列の先頭設定 (3)「Ctrl」+「↓」で移動 (4)「Ctrl」+「↓」+「Shift」後、 「←」+「Shift」で範囲選択 (5)[データ]-[並べ替え]でソートを実行 (6)「Ctrl」+「↓」でソート完了行の最後へ移動 上記ので作成したマクロをループなりで呼び出し 最終行で終了するようなプログラムで良いのでは?