• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【Excel2010マクロ】シート名を固定したくな)

【Excel2010マクロ】シート名を固定したくない場合のデータ並び替え方法

このQ&Aのポイント
  • マクロには全然詳しくないので、マクロの記録を利用してデータの並び替えを行いたい場合、sheet名を固定しなくてもデータを並び替える方法が知りたいです。
  • 現在、作成したマクロでは、sheet名が「Sheet2」(大文字小文字区別無し)じゃないとマクロが動かないため、都度変わるsheet名でもデータを並び替える方法を教えてください。
  • Excel2010を使用してデータの並び替えを行うためには、マクロを記録して実行する方法を利用することができますが、sheet名を固定したくない場合はどのようにすれば良いのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • f272
  • ベストアンサー率46% (8467/18126)
回答No.1

With ActiveWorkbook.Worksheets("Sheet2").Sort を With ActiveWorkbook.ActiveSheet.Sort にするのではどうでしょう。 ついでに .SortFields.Add Key:=Range("AN:AN"), Order:=xlAscending, が2回出てくるのはどうして? それから Columns("A:A").Select Columns("A:AR").Select のようにセルを選択する意味はないはずです。

KO1014
質問者

お礼

ご回答ありがとうございました。 このマクロは、他の人が作成したマクロを実行する前にデータの並び替えをしたくて作成しました。 そのマクロの一番上に貼り付けて実行したところ、エラー無く最後までマクロが動きました。これで手間を省くことができました。 >.SortFields.Add Key:=Range("AN:AN"), Order:=xlAscending,が2回出てくるのはどうして? ご指摘ありがとうございました。全然気づきませんでした。 最初はN・C・Dの3列でマクロの記録を実行したのですが、編集画面でF以降を増やした際に余分にコピーしてしまったようです。 本当に助かりました。ありがとうございました。

関連するQ&A