50の手習い~人生実験室

人生100年時代。50歳から人生を開拓出来るのか?自分の身体を使って実験中

VBA習得への道(1月22日)

1月22日 水曜日
 

今回のお勉強は、三太郎式マクロ勉強法ゴールドディスクのレッスン。レッスン208~210を行いました。

★レッスン208
不完全一致のマクロ
部分一致のマクロですね。like演算子とかワイルドカードを使うのかな~と予想しました。
手書き(手打ち)のリストだと確かに株式会社と㈱が混在していたりとか、大文字と小文字だとか、私一人でリストを作っていてもそんな風に表記がバラバラになっているし、増してや複数人数で入力したデータを合体させたりしてたら余計に酷くて同じ情報なのにちょっとの記載の違うデータとかが重複しまくったりするでしょうねー。
今回のレッスンでは部分一致や前方一致、後方一致などで検索をさせる際のアドバイスや注意点のコラムで、次回レッスンで実践を行うようです。
このレッスンの時点でマクロ学習のメルマガが11年続いたそうです。すごすぎる・・・
創刊から学習している人は11年間学んでいるわけですよね。すごいなあ。私ももっと前からこの教材を始めていれば良かったなあと思います。
とはいえ未だにこういった学習教材の存在すら知らずに時間と手間をかけて作業を行っている人だっているわけですからラッキーと言えばラッキーでしょう。
この先10年でも20年でもプログラミング言語の学習は続けていきたいと思います。

★レッスン209
不完全一致の後編です。
前回のレッスンでの説明を実践します。
不完全一致の題材は今回は氏名で行いましたが、苗字と名前の間にスペースが入っていたり様々な条件の下で部分一致の検索を行うレッスンでした。
恐らく慣れるまではどの位置にワイルドカードを挿入するべきなのかとか、検索ワードをどのように設定するかがよくわからなかったりすると思うのですが、
多分何度も繰り返していくうちに感覚的に理解出来るようになるんでしょうね。
あんまり曖昧一致が必要になる事態にならないのでとりあえず今は知識として知っておこう程度の学習でした。

★レッスン210
複数セルの大小を比較するマクロ
今回は条件分岐の応用レッスンです。
複数の値を比較する場合は当然構文も複雑になってくるわけで、例えば3つの値を比較する場合、ワークシート関数であれば
「a > 100 <= b」みたいな書き方が出来るので、VBAでもそれが出来ると思って同じようにコードを書いたらエラーになってしまったので慌てて調べたらそれはNGだと知った経験が過去にあります。
その時いちいちAndとかOrとか使うの面倒だなあと思いました(笑)
そう考えると、複数値があったらめちゃくちゃ複雑になりそうですよね。3つを比較するのだって面倒だと思う程なんだから・・・
今回のレッスンはとにかくシンプルに考える事を主軸としております。
VBAの勉強を始めて少し理解が出来るようになるとついつい難しい構文を使いたくなったりとか、複雑なコードを書きたくなってしまうのですが、
まずは正確な結果を導き出す事を第一に考えて、なるべく簡潔な内容を努めたいと思います。

 

www.start-macro.com