|
▼はる さん:
こんにちは
がんばっておられますね!
はるさんの取り組み姿勢はとてもすばらしいと思います。
すぐにレベルがあがって、近い将来、この板の回答者として登場されることを期待しています。
>(でも、使わないでコードを書くというのには勉強不足なので、もっと思考を変えたりして勉強していきます。一番最初に自動記録で覚えたということもあるのか、Active等を使った思考になってしまいます。。。何かポイントはありますか?)
そうですよね。
マクロ記録は人間の操作をそのまま記録しますので、どうしてもSelect/Selectionになってしまいます。
ポイントはと聞かれると、悩むんですが、
「VBAではSelect や Selection というものは無い。またActiveCellという用語も無い」
このように考えてみてはいかがでしょう。
そうすると、「無い」わけですから、なんとかして、処理するセル(セル領域)を規定しなきゃいけない。
で、どういった書き方にしようかと、そう考えるといいかもしれません。
セル領域の書き方については「VBA セル範囲」といったもので検索すると参考情報がいろいろあります。
homepage2.nifty.com/kasayan/vba/excel3.htm
officetanaka.net/excel/vba/cell/cell10.htm
excelvba.pc-users.net/fol2/2_2.html
ただ、結構メジャーなサイトでも、中には
www.eurus.dti.ne.jp/yoneyama/Excel/vba/vba_cell.html
のように、Select を全面にだしているものもあるので、要注意ですが。
ActiveCell ではないのですが、たとえばマクロ記録で
セル領域.Select
Selection.何か
こんなコードが生成されますよね。
これらの、おそらく99.5%ぐらいは
セル領域.何か と、このように書くことができます。
|
|