なぜ、今まで知らなかったのだろう...
というか何で今までちゃんと調べなかったのだろう?
セルの形式をR1C1形式からA1形式に変換するのに自作関数まで作ってたことがとてもばからしい...
あるはずだとは思っていたのだが、見つからなかった。ヘルプでキーワード検索しても、全文検索しても... オブジェクトパッケージャで上から順に怪しいメソッドを順に試せば、わかったはずだった。しかしやらなかった。
結論を言うと、Cells もしくは Range オブジェクトには Address というプロパティがあって、それを利用するとセルもしくは範囲がA1形式の絶対表記で取得できる。セル自体を参照する分には必ずしも必要ではないが、列を選択する際にはA1形式の方が圧倒的に表記が楽だ!
使い方はこんな感じ...
With Worksheets(1) Debug.Print .Range(.Cells(1, 1), .Cells(1, 1)).Address Debug.Print .Cells(1, 1).Address End With
Excelには便利な機能があるが、使い方を知らないものたくさんある。
今一番知りたいのは、オートフィルタでフィルタされずに表示されている行だけ、ループで順に処理できる方法。わかったらまたここにメモしておくことにしよう。
しかし、最近の Office のヘルプはとても使いづらい...