基準セルから最終列番号を取得する
- yuji fukami
- 10月18日
- 読了時間: 2分
<概要>
今回は基準セルから最終列番号を取得する汎用プロシージャ(GetEndCol)の紹介です。
別記事で紹介したGetCellAreaで使用している汎用プロシージャとなります。是非GetCellAreaの使い方も参考にしてみてください
GetCellArea → https://www.softex-celware.com/post/getcellarea
また別記事の最終行番号の取得「GetCellRow」とも似たような処理となります。
GetCellRow → https://www.softex-celware.com/post/getendrow
ただ、最終行番号の取得はExcel VBAで頻出の処理ですが、最終列番号の取得は滅多に行いません。表範囲セルの取得の「GetCellArea」でも解説した通り、表の列数はあまり変化しないので、最初から固定で値を与えたりします。
<実行例>
汎用プロシージャ説明
汎用プロシージャ「GetEndCol」の引数は次のようになっています。
第1引数:StartCell ・・・探索する基準の開始セル
第2引数:[MaxBlankCount]・・・最終列判定用の空白セルの連続個数
指定個数の空白セルが連続したら最後の非空白セルが最終セル
詳しい使い方は下記で説明しています。
実行例

実行例のサンプルコードは次の通りです
実行結果は次のようになり、正しく「9」の結果が出ているのが確認できます。

その他説明
概要でも触れました、最終列番号の取得は実務上ほとんど行いませんので、どうしても必要な場合のみこの汎用プロシージャを使います。その前提で使うようによろしくお願いします。
第2引数「MaxBlankCount」について
第2引数「MaxBlankCount」は別記事の「GetEndRow」とほぼ同じ扱いになりますので、下記記事を参考にしていただければと思います。
・GetEndRow → https://www.softex-celware.com/post/getendrow
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。



コメント