《連載第2弾 少しだけ、マクロを"カジって"みよう》
マクロで、セルを操作してみよう
前回までで、Sub XXX から、Sub Endの間、すなわち、プロシジャの内容を書き替えれば、思いのままに、マクロが作成できて、動かせるということが、少しご理解いただけたでしょうか。
次に、重要なのが、プロパティとか、メソッドといわれるものなのですが、それはともかく、まず、EXCEL特有の、基本的なセルの操作について、触れてみたいと思います。
ここが、普通のプログラミングと違うところです。
次のVBAプログラム【図1】を見てください。何のことだかわかりますか?

それぞれ、
(1)シート全体を選択
(2)A1:B3の範囲を選択
(3)3行目と4行目を選択
(4)A列からC列までを選択
(5)Sheet2を選択
という命令です。
ワークシート上で、セルをドラッグして、範囲を選ぶ あるいは、(5)のようにシート見出しをクリックするのと同じ動作を自動的に行ってくれます。
たとえば、
【ある範囲を選択して、コピー・貼り付けを行う】
- Range("A1:B3").Select ・・・・・・・・コピー元を選択
- Selection.Copy ・・・・・・・・・・・・・・コピー
- Range("A5").Select ・・・・・・・・・・貼り付け先を選択
- ActiveSheet.Paste ・・・・・・・・・・・貼り付け
【行を削除する】
- Rows("3:4").Select ・・・・・・・・・・・削除したい行を選択
- Selection.Delete Shift:=xlUp ・・・・削除して、以下の行を上に詰める
【列を挿入する】
- Columns("A:C").Select ・・・・・・・・挿入したい列を選択
- Selection.Insert Shift:=xlRight ・・・挿入して、以降の列を右にずらす
のような使い方になります。
ワークシート上に何かをしたいとき、この「Select」メソッドは、一番の基本です。
もちろん、挿入削除やコピーだけでなく、前回までの内容で扱ってきた、並べ替えの実行などにも、不可欠なメソッドとなります。
Shift:=のあとの、xlup、xlrightなどは、VBAの組み込み定数と呼ばれるもので、たくさんの物が用意されています。行挿入であれば、xlDown、列削除であれば、xlLeft。(なんとなくイメージは、わかりますか?)
ここでは、EXCELにあらかじめ用意されているものがいろいろあるのだな。とだけ覚えておいて、徐々に学んでいってください。
経営コンサルタント 谷田貝 敏紀
[2003年10月17日 掲載]
ジャーナル最新のテーマ
お客様の声をお聞かせください

富士通ジャーナルに掲載している記事やコンテンツについてのご意見・ご感想を、ぜひお寄せください。
お寄せいただいたご意見・ご感想については、富士通からの回答をお約束するものではありません。ご了承ください。
なお、富士通からのご回答を必要とするお問い合わせについては、
富士通ジャーナルに関するお問い合わせをご利用ください。





