VBA データのある最終行を取得する方法

ロゴ



The following two tabs change content below.
アバター

taka

あることがキッカケでVBAを独学で勉強しました、今ではブログを通してVBAでできることを解説しつつ、VBAや他の言語の勉強、ブログ運営の勉強をしています(^^♪

どうも、taka(@takabou63)です(^^♪

さて、皆さん、VBAでデータを登録していくシステムを作りたいと思った場合、どうやってデータを追加していきますか?

データベースの作りとしては、「データがある最終行を取得してその下にデータを登録していくというプログラム」が必要になってきます。

今回はそんな データのある最終行を取得する方法をご紹介していきます(^^)/

 

実際にこのシートで試していきます(^^)/

最終行を取得するコード

ではさっそく最終行を取得するコードをご紹介します(^^♪

※このコードはこれからVBAを使う人にとっては暗記必須ですので必ず覚えてください。

コード解説①cells(Rows.count,1)

rows.countは簡単に説明するとExcelの一番下のセルを取得する命令です、個のコードだけを実行した場合、私が使用しているExcel2013だと【1048576】を取得します。
cells(rows.count,1)の【1】はセルの左から数えた列番号の位置を表します(・ω・)

なので1だったらA、2だったならBとなるわけですね(^^♪

なので上記のコードは【A1048576】を取得するコードということになるのです。

コード解説②Endプロパティ

さて上のcells(Rows.count,1)はExcelシステム上の最終行を取得するコードでした、ですが欲しいのはデータがある最終行です。これではまだ何もできません(;^ω^)

さて、データのある最終行を取得するのに使うのはEndプロパティです(^^♪

このEndプロパティ、簡単に説明すると【Ctrl+方向キー】の操作を表します

xlDownCtrl+下
xlUpCtrl+上
xlToRightCtrl+右
xlToLeftCtrl+左

【Ctrl+方向キー】操作は画像で見た方がわかりやすいかもしれません。

 

 

 

 

 

画像は左からCtrl+下、Ctrl+上、Ctrl+右、Ctrl+左の操作になります。※Ctrl+右はXFDにカーソルが移動します。

xlDown(Ctrl+下)を見てみるとA2を選択してしまうのがお分かりかと思いますが、【Ctrl+方向キー】はデータないセルの前で止まるようになっています、もしAセルが虫食いのようになっていた場合はその前で止まってしまうため最終行を得ることができません。

なので最終行を取得する場合のほとんどはxlUp(Ctrl+上)であるEnd(xlUp)が使用されます。

コードを実行

解説を見ていただいたところで実際のこのコードを実行してみましょう。

.Cells(Rows.Count, 1).End(xlUp)はこのままだと、Rangeオブジェクトを返してきます。

そのためこのようにRange(“A5”)のセルの中身が表示されてしまいました。

ですので行数を知りたい今回の目的とは違ってきてしまいます。では最終行を取得する場合はどうするべきか?

行数を取得する.row

最終行数が知りたい場合は上記のコードに.Rowを追加します。

このコードを実行するとセルの行数である「5」を返すようになります。これが最終行を取得するコードとなります。

最終行の下にデータを登録する

offsetプロパティ

最終行を取得してもそこにデータを追加しても最終行に上書きしかされません、データがある行の下に追加していかないといけないのです。

.Cells(Rows.Count, 1).End(xlUp)にoffset(1,0)を追加しましょう。

offsetは基準のセルから指定した数値の分セルを移動させることができるプロパティです。

offset(縦、横)に数値を入れることによって指定できます。言葉ではわかりにくいので画像を用意しましたので参考にしてください。

これで最終行の下に【最終行です】という文字列がプログラムが実行されるたびに下に追加されていきます。

sampleファイル

なるべく分かりやすく書いたつもりですが、分かりにくいところがありましたらコメントを頂けると修正するようにします。

今回も簡単な最終行を取得とOffsetを使用したプログラムを用意しましたので好きに編集して使ってみてください。

フォロー・チャンネル登録お願いします

■Twitterフォロー

■YouTubeチャンネル登録

ファイルやコードの利用、WEBサイトの利用について

サンプルコードなどは当サイトの免責事項をよくお読みになってからお使いください。

Sponsored Link

 

WordPressでブログを始めるなら

WordPress簡単インストール&安心の安定性

レンタルサーバー Xserver

ロゴ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です