【VBA】最終行と最終列の取得方法を画像も使って徹底解説

こんにちは!大阪市を拠点に活動している『縁紡ぐ』の稲垣です。

SWELLを使ったホームページ制作や、Excel、ACCESS、RPAなどのシステム開発を行っています。
また、Excel、Word、Outlookの研修や、情報セキュリティ研修も行っています。身近なITの相談相手になりたいと思っています。

お気軽にお問い合わせください。

目次

【VBA】最終行と最終列の取得方法を画像も使って徹底解説

今回はExcel VBAを使って、最終行と最終列を取得する方法について解説します。初心者の方でも理解できるように、具体的なコード例と画像を交えて説明していきます。

なぜ最終行と最終列の取得が重要なのか?

VBAを使ってデータを操作する際、最終行や最終列の位置を知ることは非常に重要です。これにより、データの範囲を自動的に特定し、効率的なデータ処理が可能になります。

取得方法によって最終行・列が異なります。注意して使ってくださいね!

最終行を取得する方法

1. 上から下に最終行を検索する方法

まずは、上から下に検索して最終行を取得する方法です。以下のコードは、アクティブなシートの最終行を取得する例です。

上から下に最終行を検索する

Cells(1, 1).End(xlDown).Row

Sub 最終行を上から下に検索する()
    Dim 最終行 As Long
    最終行 = Cells(1, 1).End(xlDown).Row
    MsgBox "最終行は " & 最終行 & " 行目です。"
End Sub
解説
  1. Cells(1, 1).End(xlDown).Row で、1列目の最初のセルから下方向に移動し、データが存在する最後のセルの行番号を取得します。

2. 下から上に最終行を検索する方法

次は、私がもっとも使う下から上へ検索し最終行を取得する方法です。

上から下に最終行を検索する

Cells(Rows.Count, 1).End(xlUp).Row

Sub 最終行を下から上に検索する()
    Dim 最終行 As Long
    最終行 = Cells(Rows.Count, 1).End(xlUp).Row
    MsgBox "最終行は " & 最終行 & " 行目です。"
End Sub
解説
  1. Rows.Count はシートの総行数を取得します。
  2. Cells(Rows.Count, 1).End(xlUp).Row で、1列目の最後のセルから上方向に移動し、データが存在する最初のセルの行番号を取得します。

最終列の取得方法

次は最終列を取得する方法です。

1. 左から右に最終列を検索する方法

上から下に最終行を検索する

Cells(1, 1).End(xlToRight).Column

Sub 最終列を左から右に検索する()
    Dim 最終列 As Long
    最終列 = Cells(1, 1).End(xlToRight).Column
    MsgBox "最終列は " & 最終列 & " 列目です。"
End Sub
解説
  1. Cells(1, 1).End(xlToRight).Column で、1行目の最初のセルから右方向に移動し、データが存在する最後のセルの列番号を取得します。

2. 右から左に最終列を検索する方法

上から下に最終行を検索する

Cells(1, Columns.Count).End(xlToLeft).Column

Sub 最終列を右から左に検索する()
    Dim 最終列 As Long
    最終列 = Cells(1, Columns.Count).End(xlToLeft).Column
    MsgBox "最終列は " & 最終列 & " 列目です。"
End Sub
解説
  1. Columns.Count はシートの総列数を取得します。
  2. Cells(1, Columns.Count).End(xlToLeft).Column で、1行目の最後のセルから左方向に移動し、データが存在する最初のセルの列番号を取得します。
記事を書いた人

稲垣

  • Excel、ACCESSでのシステム開発が得意
  • ITスキルを共有し実践的に学びながら成長する人を見るのが幸せ
  • 自家焙煎するほどのコーヒー好き
  • 使用言語 VBA、Python、Javascript、Java、HTML、CSS etc.
  • 保有資格 Kintoneアソシエイト、日商簿記検定2級、マンション管理士、管理業務主任者、情報セキュリティマネジメント、ExcelVBA etc.
  • 業務フロー図の作成や業務時間分析を通して、効率化ポイントを探る人
  • お客様にとって本当に良いことかを第一に考える人
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次