マクロ講座19回 新規に入力する行を求めるマクロ
マクロ講座19回
新規に入力する行を求めるマクロ
最終行を選択する〜大きな表を入力している時、毎回入力行までスクロールするのは、大変です。
そこで、今回は、
新規に入力する行を求める(最終行を選択する)マクロ
を作成しましょう。
とはいえ、このマクロはマクロの記録では、作成できないので、
コードの説明から、始めます。
(サンプルファイルは、こちらから マクロ講座19回サンプルデータ)
新規データの入力行を取得コードの解説
2003以前のVersionでは、
エクセルのシートは横列が256列、縦行が65536行です。
(最新バージョンのExcel2007は100万行を超えてますが・・・
この場合は、Range("A1048576")とします。
EXCEL2007、2010、2013では、行数は1,048,576行です。)
次の End(xlUp)というのは
A列の65536行目から、上にシートをさかのぼって、
データの最終行をみつけます。
入力行は、その一つ下ですから、
Offset(1).Select で、
Offset(1)は、1行下に下がったセル、を
Select選択してくれます。
このマクロボタンを、作成しておくと、何かと便利ですよ。
マウスでスクロールなんて、ばかばかしくてやってられなくなります。
■このマクロから、Offset(1)を除くと、
Range("A65536").End(xlUp).Select
これは、そのまま最終行を取得したことになります。
Sub 新規データの入力行を取得()
Range("A65536").End(xlUp).Offset(1).Select
End Sub
2007以降では、
Sub 最終行を取得()
Range("A1048576").End(xlUp).Offset(1).Select
End Sub
Range("A65536")は、A列の一番下の最終行のセルのことです。エクセルのシートは横列が256列、縦行が65536行です。
(最新バージョンのExcel2007は100万行を超えてますが・・・
この場合は、Range("A1048576")とします。
EXCEL2007、2010、2013では、行数は1,048,576行です。)
次の End(xlUp)というのは
A列の65536行目から、上にシートをさかのぼって、
データの最終行をみつけます。
入力行は、その一つ下ですから、
Offset(1).Select で、
Offset(1)は、1行下に下がったセル、を
Select選択してくれます。
このマクロボタンを、作成しておくと、何かと便利ですよ。
マウスでスクロールなんて、ばかばかしくてやってられなくなります。
■このマクロから、Offset(1)を除くと、
Range("A65536").End(xlUp).Select
これは、そのまま最終行を取得したことになります。
では、エクセルでマクロを作成してみることにします。
エクセルのメニューから、

Visual Basic Editorをクリックします。
エクセルのメニューから、

Visual Basic Editorをクリックします。
Visual Basic Editorが開きます。
入力エリアに、Sub 新規データの入力行を取得()
と書いて、改行をクリックします。

入力エリアに、Sub 新規データの入力行を取得()
と書いて、改行をクリックします。

自動的に、End Subと入力されます。
この間にコードを書きます。

この間にコードを書きます。

スポンサーリンク
スポンサーリンク

Range("A65536").End(xlUp).Offset(1).Select
と入力して

終了してエクセルに戻りましょう。
マクロ実行ボタンをクリックします。
表示されるダイアログの中から、
新規データの入力行を取得するマクロを選び、
実行ボタンをクリックします。
新規データの入力行を取得するマクロを選び、
実行ボタンをクリックします。
データが入力されている最下行の一つしたの行が選択されています。

大きな表を操作している時には、便利なマクロです。
今日の講義は以上です。お疲れ様でした。

大きな表を操作している時には、便利なマクロです。
今日の講義は以上です。お疲れ様でした。
スポンサーリンク
スポンサーリンク