マクロを記録するときは、Ctrl+↓でさくっと指定できる範囲も、その範囲を勝手に取得してやるとなると記録だけではなかなかいけなかったりする。
いけなくもないけれど。ちょっと制限が大きい。
(セルが途切れないなら、Ctrl+↓をうまく記録して使いまわせばできなくはない。と思う。)
ということで、勝手に範囲を取得するためにエクセルマクロで最終行というか最終セルというかそのあたりを取得したいと思う。
教えてGoogle先生!!
カタカタ。。
lastrow = Range("B" & Rows.Count).End(xlUp).Row
これで最終行が取得できる。
一番下から上に上がって当たったところを取得してんのかな。いや、しらんけど。
次は最終列を調べなきゃ
lastcolumn = Cells(ActiveCell.Row, 255).End(xlToLeft).Column
途中をColumns.Countにすればいけるのかと思ったけど、できなかったので趣向を変えて一番右(得食えsる2003でいうなら255列)から戻ってみました。
もっとスマートなのがあったらごめんなさい。
そして、エクセル2007以降を使っているハイテクな(?)みなさまは16000列くらいからさかのぼってくださいな。
そうそう、最終セルというからには、取得する行と列は必ずデータある見出しデータとかでやらなきゃモレが出てしまいますのでご注意ください。