こつこつ覚える

Contents

コツコツ覚えていく

前回、オブジェクトの操作を中心にマクロを作ってみると書いてしまいましたが、もう一つ説明を忘れていたので、 そちらを先にしたいと思います。

ここまで学んだ事を振り返りながらその最後の一つ「コツコツと覚えていく」について書いていく事にしましょう。
これまでの説明でも簡単な事からコツコツと説明してきたわけですが、ここで言いたいのではそういうことではなく、一言 で言えばマクロ記録で一つづつ覚えていきましょうと言う事です。
これについては、後から述べます。

これまでやってきた事

これまではVBAのほんの初めの部分にしか触れていませんが、どれも大切な事ばかりです。
まず、マクロ記録について学びました。
次に簡単なマクロ(メッセージボックスの表示)を作りました。
そして、最後にオブジェクトについて学びました。

どうでしたか?
何となく分って頂けました? それとも簡単すぎて張り合いがなかったですか?

 

やってきて分かった事

さて、これらの結果、何が解ったのでしょうか?
少しまとめてみましょう。

  • マクロは、VBAというスクリプトで記述する
  • マクロは、マクロ記録と言う機能を使ってExcelに書かせる事ができる
  • マクロは、マクロ記録以外に、Visual Basic Editorを使って、直接記述する事ができる
  • マクロは、Sub ~ End Subの間に記述する
  • Option Explicitは記述すべき(入力ミスを防ぐ効果がある)
  • マクロは、上から順に実行されていく。

    これについては、ハッキリと説明していませんが、次の文を入力して実行してみると解ります。
     Sub Test()
       MsgBox "一行目"
       MsgBox "二行目"
       MsgBox "三行目"
     End Sub

    これを実行すると、一行目、二行目、三行目の順にメッセージボックスが表示されるはずです。
    これで、上から順に実行されている事が解っていただけると思います。順番がかわるように細工する事も できる(というより、出来ないと面白くない)のですが、これについては今度説明します。
    今は、上から順に実行されると覚えて下さい。
     

  • マクロは、基本的にオブジェクトを操作するのに使う

「コツコツと覚えていく」と言う事

では、最後に「コツコツと覚えていく」について説明します。

ここまで読んでこられて、VBAにどんな感触をもたれましたか?
すでにバリバリ使いこなしていますか?
まさか、いきなり操作の多いマクロを記録して訳のわからんような状態になっていないでしょうねえ。
マクロ記録では、ちょっとした操作でも結構な行数が記録される事がよくあります。また、間違った操作も そのまま記録されてしまいます。
それなのに、いきなり大量の操作を記録して編集しようとしても無理に決まっています。
そんな事できるくらいなら、自分で組んで必要な部分だけを記録して利用する方が効率的と言えます。

記録は最小限にしましょう。
特に勉強を始めたばかりならば、一操作のみを記録しましょう。
たとえば、「セルを選択する」、「セルに入力する」、「セルの文字列の色を変更する」というような一つの操作だけを記録して、 その記録内容を確認して覚えましょう。
以下に、先程例とした操作を記録してみました。 やった事は、

  1. 現在のシートのB2セルを選択する
  2. 選択したセルに「毎度!」と入力する
  3. B2の色を青色に変える

です。マクロは三回(一操作ずつ)に分けて記録しています。

結果は、
IMAGE1

記録されたスクリプトは、
IMAGE2
です。

どうですか? 操作を最小にするとどれも単純ですよね。
これだけ単純ならそれぞれを理解するのはそう難しい事ではないでしょう。
わからない言葉は、ヘルプで調べて、少しずつ覚えていきましょう。
何も急ぐ事はありません。一つづつ覚えていけばいいんです。そのうちにヘルプでいちいち調べなくてもコードを見ただけで何となくわかるようになります。
また、一操作だけでなく、二操作、あるいはもっとを一度に記録してもさっと読めるようになるでしょう。

さて、今回はここまでです。
これまでの説明で、面倒臭いながらもマクロを作る事ができます。
まだ、制御文や変数等について説明していませんがとりあえずは作れるはずです。
頑張ってマクロを作ってみませんか?
そうしながら、面倒だなあとか、これは何とかならんのかなあとか思うならば、次回以降で説明していく 制御文等が理解しやすくなります。
まずは、作ってみましょう。そして失敗しましょう。
失敗をクリアする事に大きな愉しみがあると思いますんで。

1999.5.5

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください