BizRobo!には開発環境であるDesign Studio(以下:DS)と、拡張機能であるDevice Automation(以下:DA)が存在します。
それぞれには特徴がありますが、利用の際どのシチュエーションで、どちらを選択するのか判断が難しい場合もあるのではないでしょうか。
DSとDAの使い分けについてはこちらの記事(BizRobo!でDSとDAロボットの使い分け)に記載していますので、是非併せてご覧下さい。
本記事ではそんな使い分けの中でも自動化において使用頻度の高い「Excelの操作」にフォーカスして、使い分けについてご紹介していきます。
目次
BizRobo!におけるExcel操作
BizRobo!でExcelを操作するにはどういった方法があるのか
DS内蔵のエンジンを使った操作
DSにはネイティブエンジンという内蔵のエンジンがあり、Robo Server内で直接操作ができます。基本的な操作はExcel専用のアクションがある為、そこから選んで設定をします。
DAとは違い、内臓エンジンを使用するのでバックグラウンドで動作します。
DAで「Built in Excel」を使用した操作
DAには「Built in Excel」という機能があり、DSと同様にバックグラウンドでの操作が可能です。DSのExcel操作は内部のエンジンで操作しますが、Built in ExcelはAPIを通じて操作するので、DSのExcel操作よりもサーバーの負荷が少ないことが特徴です。
一方でこの機能自体が比較的に新しい機能のため、他のExcel操作機能と比較すると、実装できる内容が少ないというデメリットがあります。
DAで実際にアプリケーションを操作させる動作
Built in Excelで設定できないものは、リモート端末上でExcelアプリケーションを操作します。
ですので、アプリケーション操作を設定する用のもう一つの端末で対象のExcelを開き、別の端末で設定を実施する必要があります。
Excelの複雑な操作や、Excelの機能(ピボットの作成、重複の削除)を使用した設定はDSではできない為 、手間はかかりますが設定範囲は広いことが特徴です。
内蔵エンジンにより、Excelをインストールしていない環境でも操作が可能なDSと、リモート端末上でExcelアプリケーションを操作するDAの利用で様々な業務ニーズに対応できます。
DAの特徴にDSの制限について触れましたが、具体的にどのような制限があるのか、この2つをどのように使いわければよいのか?について次の項目で見ていきましょう。
Excel操作におけるDSとDAそれぞれの特徴と制限
DSの不得意をDAで補おう!
前の項目で記載したとおり、BizRobo!におけるExcel操作はDSとDAのBuilt in Excel、DAのアプリケーション操作に分かれており、それぞれ適した利用の場面があります。適した利用場面を見極めるためには3つの特徴をよく理解している必要があります。
この章ではそれぞれの特徴と使いわけの具体例をご紹介します。
DSの特徴と制限
【特徴】
DSは内蔵エンジンによりExcelの簡単な操作を得意としています。また、DAと比べると比較的に操作が簡単なので、簡単な操作を自動化するなら優先的にまずはDSで開発することが推奨されます。
【制限】
しかしながら、データ数が多い場合や、フォーマットの複雑な帳票からのデータ抽出には向いていません。また、ExcelのリボンタブにあるExcel特有の機能を使用することもDSでは難しいです。なので、DAに比べると設定可能範囲が限られるというデメリットがあります。
Built in Excel(DA)の特徴と制限
【特徴】
Built in ExcelはDSと同じくバックグラウンドでの操作が可能です。DAで設定する必要があることから、DSよりも操作の難易度が上がるため、処理がDSで扱えない場合に、ステップで設定することのできるBuilt in Excelを試します。
【制限】
Built in Excelは比較的新しい機能のため、設定できる機能がまだまだ少なく、現状設定できるのはステップに存在する簡単な処理のみとなります。リボンタブやピボットテーブルのような複雑な処理を行うことができません。
利用場面としては、DSで対応ができない関数の変更や、文字の色変更などで利用します。
Built in Excelでも対応できない複雑な処理を設定したい場合は、次でご説明するDAでのアプリケーション操作を使用したExcelの操作で設定します。
DAの特徴と制限
【特徴】
DAはDSで開発が難しい部分を補う役割として活躍できます。
つまり、DSが苦手としている大量のデータや複雑な処理、Excelのリボンタブ内の機能を使用する処理等、広範囲にわたり設定が可能です。
【制限】
DAでのアプリケーション操作は、DSのようにバックグラウンドで動作しないためDSほど動作が安定しないのと、処理が遅くなるという懸念があります。
DSとDAでExcel操作の使い分け事例
DS、Build in Excel、DAそれぞれの特徴と制限を理解したところで、実際開発する際に、どのように考えて使い分けすればいいのか、標準とした推奨ルールはないのか、この章で事例を踏まえてご紹介いたします。
業務内容:100行程度のExcelのデータをサマリーExcelに転記し、転記した内容でピポットテーブルを作成
このような業務があった場合、処理内容としては以下の3つに分けられます
- 100行程度のExcelデータをサマリーExcelに転記する
- 転記したデータをテーブルに変換する
- 転記した内容でピボットテーブルを作成する
上記3つをDSとDAの特徴を基に使い分けするとしたら以下の通りです。
100行程度のExcelデータをサマリーExcelに転記する⇒DS
100行程度のデータの転記処理であれば、DSで設定可能なのでDSで設定します。
※もちろん、この部分はBuild in Excelでも実現できるので、②と併せてBuild in Excelで設定するのもいいです。今回はあくまでも「利用イメージ」を掴んでいただくために、DSで設定すると記載致します。
取得したデータをテーブルに変換する⇒Built in Excel
テーブル変換はExcel操作の中でもよく利用する操作ですがDSでは設定できません。ただ、DAで設定する方法もありますが、どちらかと言うと、Build in Excelでも十分に対応できる内容です。アプリケーション操作で設定するよりBuild in Excelのほうが簡単に設定できるので、お勧めいたします。
取得した内容でピボットテーブルを作成する⇒DA
ピボットテーブルはExcel特有の機能ですので、DAを使ってアプリケーションを操作する必要があります。よって、こちらの操作はDAで開発します。
このように両者の得意・不得意を理解し、使い分けることで、効率的に開発を進めることができます。
ただ、実際に案件で開発をするには社内で一定のルールを決める必要があります。理由としてはルールがない状態で開発してしまうと、各々が好き勝手に開発してしまい、品質の維持が難しくなるためです。それでは、どのように使用ルールを定めたらいいのでしょうか?
次は、弊社で定めている開発標準をご紹介します。
BizRobo!のExcel操作において弊社の開発標準
私たちは開発標準を以下のよう定めました
DS:Excelの簡単な操作を実施する(DSで設定できる範囲は基本DSで設定する)
DSではデータが比較的少ないExcelの簡単な操作を開発します。ですので、基本的にはDSでできるものはDSで開発し、できないものはDAで開発します。
DSでは「HTMLとして抽出」ステップや、「セルのハイパーリンク設定」ステップ、その他にも列や行関係のステップ等19種類のステップが存在します。
このようにはじめからステップが備わっているものはDSで扱うことが推奨されます。
Build in Excel:DSで設定できないExcelの操作はまずBuild in Excelで挑戦する
ポイントとしては、アプリケーションアクションで設定できる操作は、わざわざDAでアプリケーションを開いて操作しなくてもよいと考えています。バックグラウンドで操作できるものは、RPAに置いて比較的に安定して実行できるので、お勧めいたします。
DA:Excelの複雑な操作を実施する(DSとBuild in Excelとも設定できない操作はDAで設定する)
Excelの行数が多い場合や、DSで設定ができないものはDAで開発します。
例としては、Excelのショートカットキーやリボンタブ内の操作が必要となるものは、基本的にDAで開発する方向で検討しましょう。
上記ご紹介の通り、基本的には操作が簡単でバックグラウンドで処理できるDSを優先して使用します。DSで処理できない設定にはDAの「Built in Excel」のアプリケーションアクションを試し、ショートカットキーやリボンの操作が必要な場合はDAの画面上でアプリケーションを操作する形で設定していきます。
ここまでDSとDAそれぞれの特徴と使い分けについてご紹介してきましたが、BizRobo!ではこの2つを組み合わせることで、お互いの長所を活かし、より複雑なExcel操作を効率的に実現することが可能です。
BizRobo!を導入したが、いまいち使い方がよくわからない、実際の業務に対してDSとDAの使い分けは結局どうすれば良かったかわからないなど、そのようなお悩みを持っている方がいらっしゃいましたら、お気軽に弊社までご相談ください。BizRobo!以外でも、Automation 360やUiPathなどのRPAツールを取り扱っておりますので、自動化においてお役に立てるようなアドバイスをさせていただきます。
ペネトレイター株式会社 髙村