成果を上げながら定時で帰る仕事術 第77回 エクセルの作業を自動化しよう

©株式会社マイナビ

本連載のでは「自動化できる作業を見分けるための3つの問い」と題し、自動化の候補となる作業を見極めるために確認すべきことについてお伝えしました。今回はより具体的に、マイクロソフトのエクセルを用いた作業自動化の方法をお話しします。

最近ではGoogleのスプレッドシートを使う会社も増えつつありますが、やはり表計算ソフトはエクセルを使っているという方が多いでしょう。顧客管理、売上管理、在庫管理、日報、経費精算などなど、専用のソフトウェアやシステムを使っていたとしてもデータを入力する前工程や入力後の後工程などでエクセルを扱っているという場合もあります。

こうした作業はデータの入力や転記、集計、入力内容の確認など非常に多くの手間がかかるケースが多く、朝から晩まで毎日エクセルと格闘しているという方も少なくないでしょう。

ここで朗報です。その作業をする際に資料のフォーマットが固定化されていて、作業する際のルールも明確に定まっているのであれば十中八九、その作業は自動化できます。ここでは、難易度のレベル別に自動化の具体例を紹介します。

Lv.1 ピボットテーブルによるデータ集計の自動化

会社全体の膨大な売上データが入っている表をもとにあれこれ加工してエリア別、月別、顧客セグメント別、営業パーソン別、商品別などで集計するのに膨大な時間と労力を割いているというような場合には、ピボットテーブルによる作業の自動化がおすすめです。

また、集計結果の粒度を変えることも可能で、日単位のデータを月単位、四半期単位、年単位で集計し直すことも瞬時にできますし、売上金額の降順で並び変えたり元に戻したりといったことも簡単にできます。

ドラッグアンドドロップで項目を入れ替えることができ、直感的に操作が可能なので一度ピボットテーブルを作成した後でも「これは見たい形とは違う」と思ったら手間をかけずに瞬時に変更することもできます。

なお、ピボットテーブルを作ってしまえば集計・分析の対象データが追加あるいは更新された際にピボットテーブルを一から作りなおす必要はなく、更新ボタンを押すだけで再集計・再分析できます。但しその際には対象データ範囲の指定を確認して、集計対象から必要なデータが漏れてしまうことを防ぐように気を付けましょう。

ピボットテーブルは初見だと操作に戸惑うかもしれませんが、使い方はYoutubeなどで動画コンテンツを見ながら操作することですぐに習得できる環境があります。使いこなせるようになると、これほど便利なツールはないと実感することは間違いないでしょう。

Lv.2 関数によるデータ加工の自動化

ピボットテーブルは今あるデータの集計や分析を自動化するのには適していますが、データによっては集計できる形に加工しなければならない場合があります。対象データの数値が全角になっていたらそのままでは集計できないので半角に加工しなければなりませんし、売上データに商品名の替わりに商品コードのみ入っている場合に商品名で集計結果を見たければ両者を紐づけなければなりません。

このようなデータの加工を手作業で行おうとするとやはり多くの手間と時間がかかってしまいますが、関数を駆使することでこうした作業を自動化して一瞬で終えることができます。

関数には非常に多くの種類がありますが、ここでは代表的なものを紹介します。

演算・統計関数

お馴染みのSum関数以外にも条件に合った数値のみを合計するSumifやSumifs、セルの個数を調べるCount、条件に合ったセルの個数を調べるCountif、Countifs、それに平均値を調べるAverage、条件に合ったセルの平均値を調べるAverageif、Averageifsを覚えておくとよいでしょう。

文字列関数

セルに入っている文字列の左端から指定した文字数分だけ取り出して表示するLeft、逆に右側から取り出すRight、文字列の途中から取り出すMid、指定した文字列の文字数をカウントするLen、それに指定した文字列を連結させるConcatenateを使えるとよいでしょう。

検索関数・論理関数

指定した範囲の1列目で指定した値を検索し、指定した列の同じ行の値を表示するVlookup、条件に合うか合わないかでその後の処理を変えるIf、Ifs、複数の条件を同時に満たすかどうかを判定するAnd、複数の条件のいずれかを満たすかどうかを判定するOrを使えるようしておくとよいでしょう。

なお、1つのセルの中で複数の関数を組み合わせることで複雑な処理を行うことも可能なので、ある程度慣れてきたらぜひトライしてみてください。

Lv.3 マクロによるブック間のデータ転記の自動化

ピボットテーブルと関数を組み合わせることで、1つのブック(エクセルファイル)の中での作業の多くを自動化することが可能ですが、この2つのいずれも適していないケースがあります。それがブックを跨ぐ作業の自動化です。そこで活躍するのがマクロです。

マクロとはエクセルに限らずワードやパワーポイントなどのソフトで複数の操作を自動化することのできる機能で、ファイルを跨いだ操作を扱うことも可能です。

マクロを用いると、全国の営業所から届いた100個のファイルに含まれる報告内容のデータを1つのファイルに転記して統合する作業や、エクセルでリストになっている1,000名の顧客一覧のデータを参照して自動的にメールを作成・送信する作業などをボタン1つで完了させることなどが可能になります。

ただし、マクロを自由に作成・更新できるようにするにはVBAというプログラミング言語を習得する必要があるので、プログラミングそのものに全く馴染みがない人にとってはハードルが高いのが難点です。それでも挑戦してみたいという方は実践で活用しながら学ぶことでモチベーションを維持しながら習得できるのでお勧めです。また、もし職場にVBAを扱える人がいるのであれば、「マクロでこんなことできないか」と積極的に相談してみるとよいでしょう。

以上、レベル別のエクセル作業の自動化について説明しました。なお、本稿では別々に説明しましたがピボットテーブルと関数、マクロを組み合わせることで自動化できる作業内容は各段に増えますので、ぜひチャレンジしてみてください。

相原秀哉

あいはらひでや