先日、こんな記事を書きました。
では、実際どのように勉強して、結果どうなったのかをお話しします。
私の勉強手順
以前HPの更新業務をしたことがあるくらいで、ほとんどプログラミングは未経験
OAスキルを向上させるべく勉強と練習。(Excel関数色々,PowerPoint,タイピング)
プロゲートでHTMLとCSSの勉強を始める。
それと同時に初心者本でマクロの勉強を始める。
初めてのプログラミングにはExcelマクロ(VBA)がおすすめ
- Excelを所有していれば無料で使える
- 身近な業務に関係するのでとっつきやすい
- 言語の構造が比較的わかりやすい
- 書籍やサイトがたーくさんある
- 作成したマクロをすぐ使うことができる
勉強したきっかけ
事務業務をしていると、こんな手作業や目検でやるよりコンピュータにやってもらった方が早くて正確なのにな、と思うことが繰り返しありました。
IT業界に入り実際作成されたマクロを使用する機会も多かったので、マクロを勉強したい思いは日に日に強くなっていきました。
というわけで、転職する際に仕事が休みの期間があったので迷わずマクロの勉強を始めました。
勉強方法(教材、学んだ順序)
⓵初心者用テキストを仕上げる
こちらのテキストをやりました。本当に手取足取り説明があるので、とにかく真似すれば「できる」テキストです。(本当に理解・定着するかはその後の練習しだいですが)
学習計画表を作りました
後半から頭に「?」「?」が飛び始めましたが、よく分からなくてもとにかく、テキストに載っているコードををかけるように毎日訓練。
当時タイピングの練習をしていたので、その特訓も兼ねて、前日に勉強したページのコードを見ないで書く練習をしました。
「できるExcelマクロ」のページ構成はこうなっています。
一旦、全部読みながらコードを書いて、「できる!」と思ったら、しばらくたって➁を隠して⓵だけを見てコードが書けるかどうかやってみます。
それができたら、今度は最初の説明(このページで言えば、「作成するマクロ」の説明部分)だけを読んで、プログラム全体をかけるように練習します。
多少分からないところがあっても、最初は写経、次に覚える。そのうち、だんだん見慣れてくると不思議と意味が分かるようになることがありますので、頑張りましょう。
➁実際にExcelで簡単なマクロを組んで自動化する
私の場合は、当時色々勉強していて、その計画表をエクセルで管理していたので、それをできるところだけでも自動化してみました。テキストの真似と比べて、自分で作ると楽しいんですよね。
➂初級本を1~2冊読んでやってみる
上記のように、一冊だけやってもいまいちピンときませんでした。
具体的には、「変数」「Loop」あたりから、なぜそんな処理をするのか意味が分からなくなり、その先の「引数」あたりは全く理解不能(写してるだけー)になりました。
そんなときは、別のテキストを読んでみるのがおすすめ。
私は、下記の1冊を読みました。(必要な箇所だけ実践してみる形です。)
計画表をつくりました
④職場で実践練習
私が本当にマクロを使いこなせるようになったのは、この「実践」のおかげです。
当時上司がマクロをできる方で、仕事が暇なときはマクロを勉強するのを許諾してくれた(マクロを使う業務があった)ので、まず自分のルーティン業務を自動化していきました。
分からないことが出てきたら、とにかくWEBで調べまくりました。
良くお世話になったサイト
順番に読んでいくと体系的に勉強できます。
困ったことの解決に役立ちます。
とにかく分かりやすく、丁寧。
初心者にもわかりやすく例が沢山。
エラー、デバックとの闘いでしたが、根気強く調べ続けると大体解決します。
⑤中級から上級本を買う
慣れてきたら、さらに実践力を身に着けるべく、この2冊を買いました。
計画表を作りました
本を使った方が、盲点はなくなりますね。
⑥小さなシステムを作成してみる
私はこれを作りました。
自分でシステムを作ると自分の業務の自動化よりも、様々なことが学べました。
- 自分で最初からプログラムを構築する必要がある(業務の場合は、予め手順が決まっていますね)
- 人にも使ってもらうものなので、ユーザビリティを意識する。ユーザーフォームやボタンの使い方を学べる。
- HPにUPするために、セキュリティや保護のかけ方、WEBへのUP方法も学べる。
ただのExcelの範囲内なのですが、1つのシステムを作るのってかなりの労力が要ることが分かりました。つ、つかれた・・・
出来としては、全然満足できていないので、修正版を作ろうとは企んでいますが・・・
Excelマクロを学んでよかったこと
Excelマクロ(VBA) を勉強するとこんなにいいことが!
- 仕事が速くなった。(残業0になりました)空いている時間も増え、帰宅時間が増え、ますます勉強がはかどって好循環に。
- (おそらく)プログラミングの初歩での壁である、変数やLoop,if文などの使い方をマスターしたため、他のプログラミング言語の学習がスムーズに始められた。
- プログラムを作る、という経験ができた。
まとめ
Excelマクロは、OAスキルとプログラミングの架け橋のような存在でした。
慣れるまで大変なこともありましたが、そのあと別のプログラミング言語をやるときにはとても楽でした。どうやら初心者でなくなったようで、他の言語も基礎が分かるので初心者本は買う必要がなくなりました。