Excel VBA(マクロ)で表の端、新規入力行を取得・選択する方法/Endプロパティの使い方

landscape IT

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記事まとめ

コメント

モバイルバージョンを終了