- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2010 VBA sortについて)
Excel2010 VBA Sortでデータの並び替え方法を知りたい
このQ&Aのポイント
- Excel2010 VBAを使用して、化学データからスペクトルを生成するプログラムを作成しています。データを1行のデータ順に並べ替えた後、2行のデータ順に並べ替えたいのですが、Sort機能を使用するとエラーが発生します。SortSpecial機能を使用しても思った通りに整列されません。Excelの整列機能を使用すればできますが、VBAを使用して行データを基準に列を並べ替えることはできるのでしょうか?質問の回答をお待ちしています。
- Excel2010 VBAを使用して、化学データからスペクトルを生成するプログラムを作成中です。データを1行のデータ順に並べ替えた後に、2行のデータ順に並べ替えたいのですが、Sort機能を使用するとエラーが発生します。SortSpecial機能を使用しても思った通りに整列されません。Excelの整列機能を使用するとできますが、VBAを使用して行データを基準に列を並べ替えることはできるのでしょうか?解決策を教えてください。
- Excel2010 VBAを使って化学データからスペクトルを生成するプログラムを作成しています。データを1行のデータ順に並べ替えた後、2行のデータ順に並べ替えたいのですが、Sort機能を使用するとエラーが発生します。SortSpecial機能を使用しても思った通りに整列されません。Excelの整列機能を使用すればできますが、VBAを使用して行データを基準に列を並べ替えることはできるのでしょうか?アドバイスをお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Excel2010はまだ見たことがないのですが、VBAの書き方がかわったのでしょうか? 少なくとも、2000では以下のように書きます。 ( =ではなく、:= 区切りはカンマで。途中改行は、半角スペース+_ ) もちろん列を並べ替えられます。 ただし、その場合は行の並べ替えとは違い、タイトル(Header)の指定は無視されるので、最初から並べ替え範囲にはタイトル部分を入れません。 Sub test02() Sheets("Rawdata").Activate Columns("B:BE").Sort Key1:=Range("B7"), Order1:=xlAscending, _ Key2:=Range("B10"), Order2:=xlAscending, Orientation:=xlLeftToRight End Sub
その他の回答 (1)
- xls88
- ベストアンサー率56% (669/1189)
回答No.1
Columns("A:BE").Sort を Range("A7:BE15").Sort というようにすればどうなるでしょうか。
質問者
お礼
ご回答ありがとうございます。 さっそく試してみたものの、やはり同じエラーメッセージが出てきました。 RangeメソッドやCellメソッドの使い方は難しいです。
お礼
ご回答ありがとうございます。 コピーしてみたところ思い通りに動きました。 私も初めに:=でやっていたのですが、そのときは修正候補=と出てきたので、そちらでやっていました。 これで研究が進みそうです。 本当にありがとうございました。 追伸:実は現在ドイツの大学に留学中で手元にVBAに関する資料が全くなくて苦労していました。