everyday-study

VBA:関数(列を指定して最大行を取得)



次のようなデータに対して「修正前品名」列の名称を加工して、「品名」にデータを入れたいとなったときは、forループを回すと思います。

処理する行数が固定されていればマジックナンバーでループ回数を決めることも考えられますが、だいたい 「vba 最大行 取得」とかで検索して出てきた次のような式で最大行を取得してループを回すことが多いと思います。

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

これを同じような処理があるたびにMaxRowを定義して、最大行を取得するのもいいですが、私はいちいち書くのが面倒だったので、たった1行ですが関数を作ってみました。

最大行を取得したい列を指定するのに下のページのColSlctByTitleという関数を使っています。

例.