【関数・プロパティ設定をつかう】
5 文字列の指定位置から1文字を取得
6 文字列の文字数を取得
7 文字列のループで1文字ずつ分解
8 文字が入っているセルの最大行を取得
9 文字が入っているセルの最大列を取得
10 行のループで複数の文字列を連続分解
11 列のループで複数の文字列を連続分解
「今回は、Excel VBA/マクロによってExcelシートの中で文字が入っているセルの最大行を取得してみます。
A列の文字が入っているセルの最大行番号を取得するコードは次のようになります。」
「予め、次のようなExcelシートを用意します。
A列の文字が入っているセルの最大行番号を取得して、セルB1に格納してみましょう。」
「早速、A列の文字が入っているセルの最大行番号を取得するコードをつかってみます。」
Sub 最大行取得_End_Rowプロパティ()
Range("B1").Value = Cells(Rows.Count, "A").End(xlUp).Row
End Sub
「それでは、そのマクロを実行してみましょう。」
「セルB1に『12』と書きこまれました。」
「これは、A列の文字が入っているセルの最大行は『12』行目ということです。」
Excel VBA/マクロには文字が入っているセルの終端セルを一瞬で検索してくれる便利なプロパティがあります。
それが、Endプロパティです。
Endプロパティの構文は、次のようになります。」
「次に、A列最終行のセル: Cells(1048576, "A")から上方向に文字が入っているセルを探索し
最初にヒットしたセルの行番号を取得するコードは次のようになります。」
「A列最終行のセル: Cells(1048576, "A")から上方向に文字が入っているセルを探索し
最初にヒットしたセルの行番号を取得して、セルB1に格納してみます。」
Sub 最大行取得_End_Rowプロパティ()
Range("B1").Value = Cells(1048576, "A").End(xlUp).Row
End Sub
「それでは、そのマクロを実行してみます。」
「セルB1に『12』と書きこまれました。」
「そして、Excelの行の総数を取得するコードは次のようになります。」
「Excelの最終行 = Excelの行の総数 なので、
Cells(1048576, "A").End(xlUp).Rowの1048576にRows.Countを代入します。
すると、A列の文字が入っているセルの最大行番号を取得する構文は次のようになります。」
演習:ExcelのB列の文字が入っているセルの最大行番号を取得して、
セルC1に格納
Sub 最大行取得_End_Rowプロパティ()
Range("C1").Value = Cells(Rows.Count, "B").End(xlUp).Row
End Sub
「このように、Rows.CountプロパティとEnd(xlUp)プロパティとRowプロパティを
組み合わせることで、対象列の文字が入っているセルの最大行を取得することができます。」
Excelのセルの最終行については、ブログ『Excelショートカットキーで最大行・最大列を選択』をご参照ください。」
◇もしもPython-xlwingsだったら、
2023-03-19
2021-12-20
2021-12-12