こんにちは、タニーです。もはや仕事をする上で欠かせないツールとなっているエクセルですが、関数だけでは物足りないと思うことありますよね。

エクセルの関数は非常に種類が沢山あり、ツールとしては申し分ない状況であることは間違いありません。そんなエクセルだからこそ、こんな機能があったら便利なのに……と思うことも出てきます。

例えば、大量にある顧客データの中から、見込み客列にチェックの付いているリストだけを抜き出して別のエクセルファイルに保存したり、過去1年分の株式チャートを作成したりするとき、エクセルの関数だけではどうにも行かなくなります。

ただ、何でもかんでもマクロを作成すれば良いというわけではありません。実はマクロに向いている事と向いていない事があります

そこで、どのような場合にエクセルのマクロが有効なのか挙げていきたいと思います。ちなみにエクセルのマクロは基本的にvbaというプログラミング言語が使われています。

そのため、ここで挙げる特徴はほぼ全てのプログラミング言語にも共通している内容になります。

繰り返し作業は得意

マクロが得意とする事の1つは、繰り返し行う作業の自動化です。例えば、指定した銘柄の株価チャートを過去1年分作成すると言った事です。

上場している企業には全て証券コードというものが割り当てられています。そのため、その証券コードを使えば銘柄の株価チャートを知ることが出来ます。

例えばエクセルのマクロを作成して、あるセルに証券コードを入力すれば今日の日付から過去1年前まで遡って株価チャートを取得するということは単純な繰り返し作業となります。違うのは証券コードだけなので、それ以外の機能は全て共通のものを使うことが出来ます。

機械的な判断による作業も得意

続いて得意な事は機械的な判断をするような作業です。例えば、大量の顧客データの中から、過去1年間に製品を買ったことがある顧客リストをピックアップするような作業です(マクロは要らないという意見も聞こえてきそうですが……)。

さらに言えば、その顧客リストに対して一斉メールを送るといったことも行うことが出来ます。手作業でやると、まさに何も考えずに機械的に行う内容だと思います。

マクロを使うと、過去1年間の部分が固定でなくユーザーが指定する事も出来ます。例えばマクロを実行した時に入力画面を表示させ、xxヶ月前のxxを手で入力出来るようにしておけば、より汎用性が高くなります。

得意な点のまとめ

繰り返し行う作業の自動化、機械的な判断の作業の自動化が主な得意な点となります。これらの自動化を行う事のメリットは、単純な作業から解放されるという点だけでなく、ミスが無くなるという点にあります。

もちろん、ソースコード(プログラムの内容)が間違っているという単純なミスは除きますよ。

うっかり1行飛ばしてしまったとか、1年前までのつもりが2年前までのリストも混じってしまったとか、特に使うと疲れてくると有りがちなミスってありますよね。

マクロを使うとそのありがちなミスが完全になくなります。なぜなら、パソコンは目が霞んでよく見えなくなるとか集中力が切れて変なことを始めるなんて無いからです。

マクロが不得意とする点

マクロが不得意な作業は、得意な作業の裏返しです。要は、高度な判断が必要な作業だったり、一回限りで繰り返して行わないような作業は苦手で不得意な作業となります。

例えば、顧客リストの中に性別の列がなかった時に性別で分けたいとします。名前に「子」が付く人を女性とするというプログラムであればマクロは得意です。ただ「姓」と「名」が分かれていない場合、金子さんという苗字の方も女性に分類されてしまいます。

一方、名前の雰囲気や会った時の記憶から女性を抽出するなんてプログラムは不可能です。女性らしい名前かどうかは人の主観が入りますし、会った時の記憶なんてコンピュータにはありません。

人の判断が必要になった瞬間にマクロは使えなくなります。また、初めて行う作業で、進め方が定まっておらず手探りで進めなければならないなんて状況もマクロは使えません。

まとめ

マクロは正しく使うことが出来ればかなり有効な機能になります。でも、マクロが不得意とすることを行おうとすると、どれだけ時間を掛けても求めるものは出来上がりません。

マクロの得意・不得意を理解して是非業務効率化を図りましょう。

最初はマクロを作るだけで時間が掛かってしまいます。きっとマクロを作らずに直接作業した方が早かったかなと思うかもしれません。それでも慣れてくればすぐに出来るようになってきますし、何よりミスをしないというメリットは時間を掛けるだけの価値があります。

スポンサーリンク