EndプロパティはCtrl+方向キー的な操作をすることができるVBAで、基準となるセルから見て終端、間に空白のない連続したセル(つまり表)の端を取得することができます。
成果物

Endプロパティを使い、表の終端のセルを選択してみます。
Endプロパティの使い方

Endプロパティは引数にXlDirection列挙型定数を入力することで、上下左右の方向を指定し、進行方向の表の終端、始点を取得することができます。

まずはActiveCell.End(xlDown).Selectとして、

この状態から実行してみます。

表の終端が選択されました。

さらに右端へ移動してみます。右方向を指定するには、引数をxlToRightと指定します。

選択セルが表の右端に移動しました。同様に上に移動はxlUp、左はxlToLeftとなります。

表の端で実行した場合、進行方向に表があればその始点までストップ、何もなければ行けるところまで突き進みます。

表の中でも空白があればそこで止まるので、Endプロパティを使う表では基本空白はなくすようにしてください。

また、複数範囲には使えません。動くことは動くんですが、

実行すると左上の単セルだけが取得されます。
新規入力行にデータを追加

Endプロパティを使って、A列の一番下にデータを追加していってみます。今回はC1のデータを書き加えることにします。

Range(“A1”).End(xlDown)で、空白がない限りA列の最下端のセルを取得できます。そこからさらにOffsetプロパティを噛ませ、そのひとつ下のセルを取得します。

あとは取得したセルに、C1のデータを代入すれば良いので、コードとしてはRange(“A1”).End(xlDown).Offset(1).Value = Range(“C1”).Valueのようになります。

実行結果です。実行するたびに、一番下にデータが追加されていくことが確認できます。

関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。

Excel(エクセル):行、列
Excelの行、列関係操作、関数、VBAです。他のまとめとかぶる部分が多い場合はリンク貼ります。
行・列の選択
行・列の選択方法です。
テーブル内の行・列一括選択方法です。
VBA(マクロ)で列・...

やりたいことから方法を探すエクセル(Excel)操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
コメント