エクセルマクロの挫折しない勉強法や仕事で使いこなすコツを徹底解説!
講師の寺澤さんはこれまでの20年間マクロを使って様々な業務を効率化させるなど、数多くの社内表彰を受けてきました。例えば、数十万行の元データから分析用データを毎週作成する作業。人の手だと1週間かけても終わらない作業ですが、マクロを使うと30分程で完成してしまいます。さらに自ら社内講座も主催、全くマクロを触ったことがない数百人を指導し、満足度98%と人気を博しています。近著『4時間のエクセル仕事は20秒で終わる』では、そのエッセンスを余すところなく紹介しています。
本連載では、エクセルマクロを仕事で使うための本当に必要な知識だけを、できるだけわかりやすく説明していきます。

Photo: Adobe Stock

マクロで最大限時短するためのコツ

マクロを実際の業務で使うときに最も大切なことは、マクロに「させること」と「させないこと」を整理し、適切に使いわけることです。

マクロには作業内容によって向き不向きがあります。作業を手当たり次第マクロ化する前に、まずはこれを理解しましょう。マクロと手作業のどちらがより効率的で質の高い仕事ができるか判断できるようになり、時間の無駄を避けられます。

それでは、マクロに「させること」と「させないこと」をそれぞれ解説していきます。

マクロにさせること

基本的に、プログラムの強みをいかした「同じことを繰り返す作業」や「毎日・毎週決まってやる定例業務」のような仕事です。具体的には次の4つです。

1)規則性のある作業
データに何1000行も挿入したり、何十回もデータにオートフィルタをかけるなど、規則性のある作業をする場合は、変数や繰り返しの威力を最大限発揮できます。1回限りの作業だとしても、繰り返す回数によっては相当時間を取られます。結果的にマクロの方が効率的な場合が多いです。

2)日々の定例作業
毎日繰り返す定型作業も、マクロで効率化できます。決まったシートへの行の削除や挿入、セルへの文字や数式の入力など、毎日同じ作業を繰り返している場合です。マクロを利用してボタン1つで終わらせるようにしましょう。

3)表やグラフの元データの作成
また、表やグラフではその元となるデータをマクロで作成しましょう。これらは「データ部分をマクロで更新すれば、表やグラフへ自動的に反映される」という仕組みにしておくことで、効率的に更新業務を行うことができます。

4)ユーザーの動きに合わせた処理
最後に、メッセージボックスのように、ユーザーの動きに合わせて処理を変更させたい場合にはマクロを使います。ユーザーの動きに合わせた処理は、エクセル関数などではできません。

マクロにさせないこと

一方で、マクロにさせない方が効率のよい作業もあります。主に「1回ごとに内容が変わってしまう規則性のない作業」や、「見た目を美しくする」といった作業などがこれにあたります。具体的には次の通りです。

1)規則性のない作業
規則性のない作業はマクロで実行するには不向きです。繰り返しの条件や終端セルの選択などを工夫してむりやりマクロで対応することもできますが、それでも限界はあります。

2)エクセルの関数で出来る作業
単純にエクセルの関数を使ってできる演算であるならば、わざわざマクロで関数を書かず、これまで通りエクセルの関数を使って対応した方が早く終わることが多いです。

3)書類の体裁を作り込む作業
最後にグラフや表、見積書などのデザインをする作業です。色やフォント、罫線の設定といった資料の美しさに関わる部分は手作業で追求しましょう。事前に手作業でデータが入っていない枠組みを作成しておき、マクロを使ってそこにデータを流し込む方が速くきれいに完成します。普段は「セルの幅を整える」「罫線を引く」「文字のフォントや大きさを変える」といったエクセル上で見た目を整えるためのマクロはお教えしていません。それは「体裁はマクロで整えるものではない」という信念があるからです。

このように、何でもマクロで処理をしようとするのではなく、マクロで処理すべきこととそうでないことをうまく判断しながら、業務の効率化を進めてみてください。

(本稿は、寺澤伸洋著『4時間のエクセル仕事は20秒で終わる』を抜粋、再構成したものです)