- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA)
エクセルVBAマクロで表の並べ替えをする方法とマクロの可変化について
このQ&Aのポイント
- エクセルVBAマクロを使用して、表内のデータをC列を基準に並べ替える方法についてご教授ください。毎回最終行の位置も認識して対応したい場合、どのように記述すればいいでしょうか?また、activeなシートのシート名も可変にする方法も教えてください。
- エクセルVBAマクロにおいて、表内のデータをC列を基準に並べ替える方法と、最終行の位置を認識して対応する方法について教えてください。また、activeなシートのシート名も可変にする方法も知りたいです。
- エクセルVBAマクロにおけるデータの並べ替え方法と、最終行の位置を自動的に認識して対応する方法について教えてください。また、activeなシートのシート名を可変にする方法もお知りになりたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
1.最終行 空白セルのない行(No.とか)で「Ctrl+↓」操作にあたる.End(xlDown).Selectするのが分かりやすいですが、データフォーマットに応じて使い分ける必要があると思います。 「VBA 最終行」で検索してみてください。 参考) http://www.niji.or.jp/home/toru/notes/8.html http://www.happy2-island.com/excelsmile/smile03/capter00702.shtml 最終行(r)は以下のように使えます。 r = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row Range("A4:EJ" & r).select Range("A4").Resize(140, r - 4).select 2.アクティブシート Sheets("sheet1") を ActiveSheet に変更。 ちなみに、Range("A1")のようにシート指定を省略した場合、ActiveSheetが対象になります。指定あり/なしが混在すると、混乱を招きやすいので、注意してください。
お礼
ありがとうございました。m(_ _)m