Excelのワークシートの最下行と最右列を取得
Excelのマクロでデータがセットされている最も下の行を求める場面はよくあります。
ワークシートにA1セルを起点(左上)とする一般的な表がある場合、
Cells(Rows.Count, 1).End(xlUp).Row
とすることで取得できます。
Cells(Rows.Count, 1)はワークシートのA列の最も下のセルを表します。Excel2013ならば1048576になります。
End(xlUp)はCtrlを押しながら上向き矢印を押したのと同じ効果があります。つまり最も下のセルから上に向かってデータがセットされているセルを探します。
Rowで行番号を表します。
これならば万が一、表の左端に空のセルがあっても求められます。
最も右の列を求めるのも同様です。
まとめると次のようになります。
最も下の行番号
Cells(Rows.Count, 1).End(xlUp).Row
最も右の列番号
Cells(1, Columns.Count).End(xlToLeft).Column
なお範囲を取得するにはCurrentRegionを使う方法もあります。
[ 2016年3月10日 | カテゴリー: Excel | タグ: tips , VBA ]
« Excelを表計算ソフトとして使う | Excelで印刷時に文字がはみ出さないようにする方法 »
コメントを残す