RPAでExcel操作を自動化!マクロやPythonとの比較、自動化例
目次
日々のパソコン業務のなかには、Excel(エクセル)を使って作業をするものが多く存在するかと思います。このExcel作業のなかには人の手で処理をすると作業ミスや疲労により処理効率が下がってしまったりと、人の手で行うのは最良ではないものもあります。これらはRPAで自動化し、業務を効率化しましょう。
この記事では、Excel業務をRPAによって自動化する方法や自動化できる業務の具体例、自動化できない業務について、RPAの注意点などをご紹介します。併せて、RPAに同じくExcelの自動化として知られている、マクロ・PythonとRPAの比較もしていきます。
RPAでExcel(エクセル)を自動化できるか?
結論、RPAでExcel(エクセル)を自動化することはできます。
RPAは、これまで手作業で行っていたデータ入力や、データ計算や照合、メールの送信や、web上での情報検索などのあらかじめ決まったルールに沿って作業するものをソフトウェアで自動化するものであり、Excelによる作業も例外ではありません。むしろ、Excelで行う繰り返される多くのルール化された作業は、RPAで自動化でき、RPAによる自動化の相性も良いのです。
Excelは利用ユーザーが多く、RPAによる自動化の対象となりやすいコピペやデータ入力、集計などの、あらかじめ決まったルールに沿っての作業をExcel上で行う機会も多いです。そのことから、ExcelはRPAによる自動化の対象としてよく使われます。
そもそもRPAとは?
RPAとは、「Robotic Process Automation(ロボティック・プロセス・オートメーション)」の略称で、おおまかな意味としては「ソフトウェアロボットによる定型業務の自動化」あるいは「定型業務を自動化するソフトウェアロボットそのもの」を指します。
冒頭でお伝えした「あらかじめ決まったルールに沿ってする作業」はまさにこの「定型業務」にあたります。人の判断を必要とせず、マニュアルがあれば完了できる作業・手順が定められている作業です。
RPAはこうした定型業務のうち、パソコン上で完結する作業の自動化を得意とする技術であり、運用・メンテナンスを適切に行えば半永久的に動作し続けられます。そのため、従来であれば人手を要していた作業をRPAに任せて業務を効率化します。
RPAの基本については、以下の記事で詳しく解説しているため、併せてご覧ください。
併せて読みたい! 初心者の方向け:RPAの基礎知識や事例については以下記事で詳しく紹介しています
RPA、マクロ(VBA)、Python、どれが最適?
Excel操作を自動化する代表的な方法として、RPA、マクロ(VBA)、Pythonの3つがあります。この3つのうちのどれが最適なのかは、求めるものによって異なります。
確認すべき観点としては、「自動化の対象範囲」「プログラミング言語の知識」「データの処理速度」「導入コスト」の4点です。以下を参考にしてみてください。
RPA |
マクロ(VBA) |
Python |
|
自動化の対象範囲 |
さまざまなシステム、アプリケーション、Webブラウザに幅広く対応 |
ExcelをはじめとしたMicrosoft Office製品が中心 |
RPAに同じく、広く対応しており、更にプログラミングであるためAIの開発など自動化の範囲を広めることができる |
プログラミングスキルの知識 |
多少は必要(処理内容やツールによっても異なる) |
必要(VBA) |
必要(Python) |
データの処理速度 |
RPAツールにより異なる |
速い |
マクロよりは遅い |
導入コスト |
有償の場合がほとんど(なかには無料ツールもあり) |
PCにMicrosoft Officeが入っていれば無料 |
無料 |
まず、「自動化の範囲」について、マクロはMicrosoft Office製品が中心ですが、RPAツールとPythonはその他のシステムやアプリケーションを横断した自動化が可能です。RPAが定型業務のみの自動化であるのに対して、Pythonは言語を習得できれば自作で自動化ツールを作成できる点が、大きな違いといえます。
また、「プログラミングスキル」について、マクロは「VBA」、Pythonは「Python」と、それぞれの言語を用いたプログラミングスキルが必要です。
一方で、RPAは比較的難易度が低く、高度なプログラミングスキルは必要ありませんが、プログラミングに関する基礎的な考え方やスキルは必要です。ツールや処理内容によってはプログラミングスキルが必要な事もあると考えましょう。
「データの処理速度」については、マクロ(VBA)が速い傾向にあります。RPAの場合、種類により異なり、デスクトップ型のようにパソコン端末のスペックに依存するタイプのツールだと、スペックが低い場合データの処理速度は遅くなり、場合によってはフリーズするかもしれません。サーバー型のような端末スペックに依存しないタイプのツールであれば、マクロよりも速く処理できる可能性はあります。種類以外にも、各RPAツールごとに機能や処理速度はさまざまです。Pythonもパソコンの端末スペックによりますが、マクロよりも遅い傾向にあります。
最後に、「導入コスト」についてです。RPAは、月額もしくは年額費用がかかるのが一般的です。無料で提供されているツールはわずかであり、有料のRPAツールと同じ機能やサービスを受けられるとは限りません。マクロに関しては、パソコンにMicrosoft Officeが入っていればそれ以上の費用はかからず、Pythonは自分で自動化したい内容をプログラミングして作成するため、利用するための費用は発生しません。
このように、それぞれの特徴があるため、自社にとって適したツールを導入しましょう。なお、RPAとマクロの違いについては以下の記事でも紹介しています。併せてご覧ください。
併せて読みたい! 初心者の方向け:RPAとマクロの違いや特徴については以下記事で詳しく紹介しています
RPAで自動化できるExcel(エクセル)業務の例
RPAを活用すれば、日々のExcel(エクセル)業務を自動化して生産性を高めることができます。ここでは、RPAで自動化できるExcel業務の例を4つ紹介します。
なお、前提として、自動化の対象がExcelである、ないに関わらず、「人の思考を必要としない、かつ、ルール通りに操作ができる」定型業務がRPAで自動化できる業務の特徴です。この点を念頭に入れましょう。
データの入力と転記(コピペ)
データ入力・転記(コピペ)はExcel業務のなかでもRPAによる自動化がしやすい業務のひとつです。
たとえば、決まった顧客情報や納品物をシステムとExcel間で転記(コピペ)するなどの作業は、何度も同じ作業を繰り返すこともあるため、手作業では時間がかかるうえにミスが発生する恐れもあります。
このような業務をRPAで自動化することにより、作業時間とミスの削減につながります。なお、RPAはデータ化されている事が必須のため、紙の場合はOCR(光学文字認識)でデータ化してから、RPAで自動化します。
データの抽出
日々のExcel作業ではデータ入力・コピペ・集計などの工程のなかで、データを抽出する工程があります。
たとえば、データ入力の際には、記入する情報を用意をするために対象となるデータを事前に抽出しておかなくてはなりません。しかし、手動でデータを抽出するとなると、目的のデータを探すことはもちろん、抽出作業自体にも労力がかかるため、RPAによる自動化が推奨されます。
労務費データやメールデータなど、さまざまな場面でデータの抽出作業は必要となり、これらを自動化できます。
集計
あらかじめ決まっているセル同士の集計業務も、自動化できるExcel作業のひとつです。
例として、各Excelに点在しているデータを一つのファイルにまとめたり、そこから必要な値の項目を選択し、ピボットテーブルを作成したりするといった作業の自動化が可能です。
手動の場合、目視でデータの整理や集計作業をするため、誤った値を入力することもあります。しかし、RPAは決められたセルのデータを必ず参照することから、設定した項目に変更がない限り、ミスなく作業をすることが可能です。
RPAを活用することでこうした手作業によるミスを削減できるため、業務をより効率的に進められるようになります。
グラフ作成
抽出・集計したデータを加工し、帳票やグラフとして作成・出力する際にもRPAは役立ちます。
たとえば、見積書や納品書など、Excelを使用して作成する書類では、図形を用いるケースは多いはずです。こうした加工工程に関しても、RPAによる自動化ができます。ただし、RPAのツールによってはグラフを作成する機能がないこともあるため、画像認識機能を用いて実装する必要が出てくる場合もあります。
画像認識機能は便利な機能ですが、設定した画像が変更されてしまうと動かなくなってしまうことも多いため、注意しましょう。
ここがポイント
繰り返しますが、RPAは予め手順が決まっている作業の自動化するものです。これは自動化の対象がExcelでない場合も同じです。逆に、人の判断を要する作業はRPAで自動化できないため、例えば「集計作業」の場合、予め集計対象のセルがどこで、どの計算式をいれるかが決まっていることが前提になります。
併せて読みたい! 定型業務と定型業務ではないものの見分け方は以下記事で紹介しています。
RPAで自動化できないExcel(エクセル)業務の特徴
以下のような業務に関しては、人の思考が必要であったり、ルール外の操作が必要となります。そのため、RPAによる自動化はできない、もしくは難しいものとなります。
人の思考や判断が必要な資料やデータの作成
毎週、毎月作成する必要があるものの、定型業務のようにはRPAでは代替できない資料やデータの作成業務もあります。たとえば、毎月の活動状況や成果を報告する月報は、月の振り返りと今後の見通しをするための資料であり、基本的には何らかの人的思考や判断を必要とします。
RPAは事前に与えられた指示通りに動くプログラムなので、人の代わりに考えたり、判断することはできません。
高度なデータ分析やシミュレーション
高度なデータ分析やシミュレーションでは、状況に応じて分析方法やシミュレーション条件を変更することがあります。RPAは事前に指示された通りに動作するため、こうした都度の柔軟な対応が求められる業務にはあまり向いていません。
また同じ理由で、算出されたデータに基づいて売上などのシミュレーションをすることはできません。
RPAを活用することで高い効果を得られるExcel作業とは
Excel作業のなかで、RPAによって高い業務効率化の効果を得られる作業は、繰り返し作業と量の多い作業です。代表例として、ECサイトと請求書作成におけるRPAの具体的な導入効果についてみていきましょう。
まず、複数のECサイトを運営しており在庫を実店舗とあわせて販売している場合、実店舗の販売実績に応じて各ECサイトの在庫情報の更新や、そのための集計をしなければなりません。情報をExcelでアナログに管理している場合は特に、これらの作業が増えるため、担当者の負担は増加してしまいます。そうした作業がRPAで自動的に処理できるようになれば、担当者の負担が大幅に減少するとともに、ECサイト上の情報を素早く更新できるようになります。
次に、請求書作成におけるExcel作業もRPA化による恩恵を受けやすいものの1つです。請求書は取引の証拠となる重要な書類であるため、商品名・金額・取引先といった情報を、正確に入力しなくてはなりません。これを人の手ですべて入力していると、時間と手間がかかるだけでなく入力ミスのリスクも生じまいます。
フォーマットが決まってれば、RPAによって繰り返される請求書の作成作業を自動化できます。作業時間やミスを削減できるだけでなく、請求書作成作業のために発生していた工数の削減等に貢献します。
具体的な業務内容についてはこちらの章で紹介します。
RPAの注意点
「RPAは誰でも簡単に自動化できる」というイメージをお持ちの方は少なくないかもしれません。たしかに、VBAやPythonと比較すると、プログラミングスキルが必要ないことから、難易度は低いものになります。作業手順をRPAに覚えさせ、開発完了後はボタンを押すだけで動作する、というのがRPAの特徴です。
多くのRPAツールはノーコードまたはローコードで利用できるため、実際のところ本格的なプログラミングスキルを身に付けることは必須ではありません。
しかし、非IT担当者が何もわからないままにすぐに使えるほど、RPAは簡単とはいえません。
前述した、"作業手順をRPAに覚えさせる"工程と、その工程でエラーが発生した場合に原因特定や改修するための知識や自動化する業務と自動化に不適切な業務を見極め、実際にRPAに覚えさせるための要件定義力などがRPAを利用する際には必要になります。
これには、適切なRPAツールを選定するための知識も含まれるため、これらの知識や経験がない場合には、アウトソースをするか、はじめはアウトソースをして徐々に内製化するようにしましょう。
併せて読みたい! RPAは内製と外注(アウトソース)のどちらが良いかについてはこちら
RPAの動かし方の基本
つぎに、RPAの動かし方の基本について初心者向けに説明します。
RPAで自動化する際、作業の一連の流れをRPAに覚えさせます。たとえばExcelに情報を入力する作業の場合、実際に人が操作をする流れに落とし込むと以下のようになります。この手順を、漏れなく実際の手順通りに覚えさせていく必要があります。この工程を「開発」や「シナリオ作成」と呼びます。
1.Excelを立ち上げる → 2.ファイルを開く → 3.入力 → 4.保存 → 5.閉じる |
また、RPAを動かす方法には「ひとつずつコマンドを組み立てる」「レコーディング機能を利用」の2種類があります。
前者の場合、1つの処理ごとにコマンドを選択して設定し、組み立てていきます。
前者の場合、多くのRPAツールでコマンドと呼ばれる、RPAがアクションを起こすためのパーツの一覧から「Excelの開始」のように、アクションさせたいコマンドを選択し、設定を行う作業の繰り返しでRPAに覚えさせていきます。
後者は、RPAにレコーディング機能がある場合のみですが、録画ボタンを押して一連の作業を自分が行うという方法でRPAツールに覚えさせていきます。
シナリオが完成後、実行ボタンを押すと覚えさせた作業をRPAが処理してくれます。
併せて読みたい! 以下記事ではRPA開発の手順等について解説しています。
RPAで自動化できるExcel(エクセル)の具体的な業務例
RPAで自動化が可能なExcel業務の具体例について解説します。
ここでは例として「データ入力・転記(コピペ)」「データ抽出」「集計」「帳票・グラフ作成」をご紹介します。
Excelのデータ入力・転記(コピペ)例
RPAを用いてExcelへの転記(コピペ)作業を行う場合、まずは転記先となるExcelファイルを準備するところから始めます。Excelファイルを準備する際のポイントとしては、文字列・数値・日付などデータの型を統一しておくことです。転記先のExcelファイルについても、データの型を指定したり列と列の幅を調整したりしておくと、スムーズに作業を進められます。
RPAツールの開発方法は使用するツールによって異なりますが、一般的には以下の流れを参考にしてください。
- 転記元のExcelファイルを開く
- 転記したいデータの範囲を選択する
- 転記先のExcelファイルを開く
- 転記したいデータの場所を指定する
上記の設定が完了しスクリプトを実行すれば、RPAツールが自動的に転記作業をします。
Excelデータの抽出例
大まかには、任意のExcelファイルから任意のデータを抽出する作業が主となります。
たとえばメール送信先のデータを送付先マスタや顧客リストから抽出し、メール送付につなげることが可能です。
Excelの抽出作業については上記だけではなく、他システムからデータを抽出して任意のExcelファイルに転記したり、集計したりといったこともできます。
転記・集計作業をするにあたって、データの抽出は重要な工程ですが、人力で行おうとすると負担が増加してしまう可能性のある作業です。併せて自動化することで作業効率が大幅に向上します。
Excel上での集計例
売上管理データや従業員の勤怠管理データなど、膨大な情報の中から任意のデータを探し出し、集計作業をするのは人力の場合だと手間がかかりますが、RPAに作業フローを覚えさせれば短時間で作業が完了します。
具体的には、集計したいデータが記録されているExcelファイルから任意のデータを選択・抽出し、集計用のExcelファイルやシステムに転記し、集計する流れとなります。
これら転記(コピペ)・抽出・集計という作業において、RPAはマクロとは異なり、ExcelやMicrosoft Officeだけではなく、その他のアプリケーションとも横断・連携して作業を自動化させることが可能なため、非常に便利です。
RPAによるExcelの自動化なら「マクロマン」
RPAによるExcelの自動化、業務効率化は「マクロマン 導入支援パック」がおすすめです。
月額4万円で、チャットでのヘルプデスクや、シナリオ作成のサポート(初回10時間分を当社で作成代行します)、RPA化する業務の洗い出し会の開催、月1回のZoom相談会がセットになったお得なパックで、業務自動化をしたい方におすすめです。なお、の必要がない場合は、完全無料でもお使いいただけます。
もちろん、Excelの自動化もマクロマンで自動化できます。たとえば、Excelで行う各種マスタや伝票情報などのデータ入力は得意分野です。Excelでのデータ入力は時間がかかるだけでなく、アナログに実施するとヒューマンエラーが発生してしまう恐れもあります。マクロマンを活用すれば、スクリプトで指示を出した通りに高速で処理を進めることが可能です。
手間のかかるExcelのデータ集計や分析も、マクロマンに任せてしまいましょう。定期的に提出が必要なレポートの作成など、Excelで行うデータ処理に時間がかかているケースは珍しくありません。こうした繰り返し行われる定型作業はマクロマンとの親和性が高いので、積極的に自動化を進められます。
RPAがはじめての方はアウトソースがおすすめ
この記事の監修者
コクー株式会社
RPA事業部 エバンジェリスト
吉田 将太
RPA事業部の立ち上げとして、営業・RPA開発・研修講師を経て、2023年1月にエバンジェリスト着任。
RPAやRPA以外の技術を使って業務効率化を目的にした様々な開発に携わる。この経験から300名以上の研修講師を務める。