プロが教えるわが家の防犯対策術!

こんにちは。

Excel 2010を使用しています。
マクロの記録でデーターを並び替えています。
やりたいことは並び替えたデーターをすべてコピーして
新しいブックにコピーすることです。

ただ毎回データーの行数が異なるのでマクロの記録では
対応できません。
どのようにマクロを書けば、最終行を見つけてすべての
行がコピーできるか書き方をお教えください。

よろしくお願いいたします。

A 回答 (3件)

マクロの記録でも対応できますよ!



1. 表の中の1つのセル(項目のセルなど確実にその表と指示できるセル)を選択する
2. [Ctrl]+[Shift]+[*] 表全体の選択
あとは目的のようになるように記録してください

Range("A1").Select
Selection.CurrentRegion.Select
といった具合です
    • good
    • 5

こんばんは!



最終行・最終列を取得してコピーの一例です。

ActiveSheet.Range(Cells(1, 1), Cells(UsedRange.Rows.Count, UsedRange.Columns.Count)).Copy

こんな感じではどうでしょうか?
※ A列および1行目は何らかのデータが入っているという前提です。m(_ _)m
    • good
    • 11

別に


Sub Macro1()
Cells.Copy
End Sub
として全てのセルをコピーしてはダメでしょうか?

或いは
Sub Macro2()
Range("A1:B" & Range("B" & Cells.Rows.Count).End(xlUp).Row).Copy
End Sub

として、A1セルからB列の最終行までのコピーという事が出来ます。
理解できなければ

msgbox Cells.Rows.Count).End(xlUp).Row
とでも入れて実行してみてください。
B列の最終の行から上へ移動してデータの入っている最後の行番号が得られます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!