仕事

エクセルマクロはプログラミング初心者でも習得できるのか?

エクセルマクロはプログラミング初心者には敷居が高く習得が難しいものと思いますか?本記事ではプログラミング初心者がエクセルマクロを習得できるのか否かについて解説いたします。エクセルマクロを習得したい方は必見です。

エクセルマクロはプログラミング初心者であっても習得できるのか?

結論から言うと充分習得できると考えます。

理由は通常のプログラミングよりもエクセルマクロ(VBA)は圧倒的に簡単だからです。

圧倒的に簡単な理由としては具体的には以下のものがあげられます。

・環境構築の手間が無い

・情報がたくさんネットに掲載されている。

・マクロの記録機能を使ってコードの確認ができる。

・デバック機能が備わっており、エラー修正が容易。

・作りたい題材がたくさんある。

それでは具体的に上記の点について解説していきます。

環境構築の手間が無い

エクセルマクロでは環境構築の手間がほとんどありません。

環境とは実際にプログラミングしたものを動かすための環境のことです。

通常のプログラミングであれば、色々なソフトウェアをダウンロードしながら環境構築していかなければなりません。しかしエクセルマクロであれば、環境がすでにマイクロソフトオフィスに備わっているため、構築の手間はほぼゼロです。直ぐにコードを書いて動かすことができます。

自分もプログラミングの経験があるのでわかるのですが、プログラミング学習においてこの環境構築が一番面倒くさく、プログラミングの挫折の原因になりやすいです。(まだコードを書き始めてもいないのに挫折するのは非常にもったいないことだと感じます)

一方エクセルマクロであれば、今すぐエクセルを開き下記の設定をすることで読者の皆様もすぐに始めることができます。

<手順>

f:id:Kommaim:20191117141959p:plain

エクセルのファイルタブをクリックし一番下のオプションをクリックする

f:id:Kommaim:20191117142147p:plain

中段のリボンのユーザー設定をクリックし、メインタブメニューの中の開発という項目に☑を入れる

f:id:Kommaim:20191117142327p:plain

エクセルの画面に戻り右端の開発タブをクリックし、左端のVisual Basicボタンをクリックする。

f:id:Kommaim:20191117142459p:plain

Visual Basic Editor というコードを書く画面が表示される

ネットや市販の本にたくさん情報が掲載されている。

エクセルマクロはネットや市販の本にたくさん情報が掲載されています。

そのため、少し躓いても調べればほぼすべてのことを自力解決可能です。これは独学者にとっては大変なメリットです。

調べれば自力解決可能なのは当たり前のように思うかもしれませんが、通常のプログラミングではそれすらも難しいことがあります。

私がRubyというプログラミング言語を学習していたときも、何度か躓いたことがありますが、躓きを解決するためにネットや市販の本から情報を漁っても、3日たってもヒットする情報が見つからないことはしばしばありました。独学の場合ネットと市販の本が情報の全てですから、そこから情報を得られないと詰みます。Rubyプログラミング言語の中では情報が豊富な方らしいのですが、それでも上記のような状況に陥ることがしばしばありました。一方エクセルマクロは探せば必ずどこかに情報が掲載されている印象です。これは独学を続けていく上では大変なメリットであると考えます。

マクロの記録機能を使ってコードの確認ができる。

エクセルマクロの初心者が学習を進める上で大きな手助けとなるのがマクロの記録機能です。

マクロの記録とは動画の撮影のように記録のスタートボタンと停止ボタンを押し、スタートボタンを押してから停止されまでの間のエクセルの動きを全て記録するという機能です。記録したものは実際のマクロとして保存され、何度も繰り返し使うことができたり、コードを確認したりできます。

これが大きな手助けになる理由は、作りたいものがあるがコードの書き方がわからない時に、①実際に作りたい動きを再現して記録する→②コードを確認するという手順がとれることです。通常のプログラミングであれば①コードを書く→②動かしてみる→③うまくいかずコードを修正する→④動かしてみる をうまくいくまで繰り返していかなければなりません。しかしマクロの記録を使えば通常とは逆の手順を取れるのです。(①動かしてみる→②コードを確認する)

これはプログラミング初心者にとっては大きな手助けとなる機能と考えます。

デバック機能が充実しており、エラー修正が容易

エクセルマクロはデバック機能が充実しており、エラー修正が容易です。

デバックとはde(取り除く)bug(バグ)のことで、文字通りバグを修正する行為(エラー修正)です。通常のプログラミングであれば、このデバック作業もすごく大変なものなのですが、エクセルマクロはデバック機能が充実しておりエラー修正が容易となります。

例えば以下のようにエラーが出た時にデバックボタンを押すと、どのコードに問題があるのかを検出し色を付けてくれます。(通常のプログラミングにはこのような機能は備わっておらず、エラーという事実のみを知らされて、該当のエラー箇所を自力で探していかなければなりません。)またエラーにはならなかったけれども、思った通りに動かなかったときに、どこに問題があるのかを発見するための色々な機能が備わっています。例えばステップ実行です。ステップ実行とはコードを1行毎に実行していき、マクロの動きを1行毎に確認することのできる機能です。この機能を使えばどのコードの実行時にうまくいっていないかを容易に見つけ出すことができます。

f:id:Kommaim:20191117144435p:plain

マクロを実行したときにエラーのポップアップが出現。ポップアップのデバックボタンをクリック

f:id:Kommaim:20191117144610p:plain

コードに誤りのある箇所を黄色で表示

題材がたくさんある。

エクセルマクロは作りたいと思う題材がたくさんあります。これは挫折を防ぐのに大きなメリットとなります。

私は以前、プログラミングスクールなどに通い、プログラミングを学習していたことがありました(主にRubyという言語)。一通り学んで、当時は自分で簡易なアプリケーションを作ることまで出来るようになっていました。しかし、Rubyを使って解決しようと思うような課題があまり思い浮かばず、次第に使わなくなってしまいました。しかしエクセルマクロであれば、解決する課題はたくさんあります。自分の身の回りの業務すべてが課題です。そのため題材に困らない点で継続しやすく、挫折しにくいものと考えます。