■サイト内検索:
 

RPA Biz > RPA基本情報 > 【UiPath初心者】Excelの自動化やってみた 前編

【UiPath初心者】Excelの自動化やってみた 前編

2018.08.29

UiPathではいくつかの自動化のツールが存在しますが、

今回はその中でもExcelを用いて自動化をいくつかやっていこうと思います。

 

はじめる前に


自動化を始める前に、まずは環境構築が必要です。

といっても、そんなに難しいことではありませんので見ていきましょう。

 

UiPathにはExcelの自動化を補助するアクティビティは元から入ってはいません。

 

ですが、すぐに追加することができます。

みなさんもアクティビティなどをワークフローに追加したりするのに使っている、

アクティビティパネルをご覧ください。(デフォルトでは左側にあります。)

 

アクティビティパネルの上側にある「Manage Packages」をクリックしてください。

 

その後、Availableから「UiPath.Excel.Activitis」をインストールしてください。

 

 

これでUiPath内の環境構築は終わりました。

 

Excelアプリのインストールなしでも自動化可能!?

今からExcelの自動化を行うのですが、この際にExcelアプリを使う必要があるかどうかを見ていきます。

 

実は、Excelの自動化と言ってもExcelアプリをインストールすることなしに自動化することもできます。

この場合は、すべてのワークフローがバックグラウンドで実行されてExcelを開く必要がありません。

ですので、Excelアプリのインストールなしに全てのワークフローを行うことができるのです。

しかし、どのようにセルの値が変わっているかどうかなどをリアルタイムで確認することはできません。

 

Excelアプリを使った利点としては、リアルタイムで現在の状況を見ながらデバッグすることができる点です。

デバッグはExcelアプリを使って自動化を行ったほうがやりやすいのかなと思います。

 

やり方などについては後程具体的に見ていくことにしていきたいと思います。

 

Excelワークブック(Excelファイル)とデータテーブルの違い

これからのデータはExcelワークブック、もしくはデータテーブルというものを用いて扱っていきます。

これらにはどのような違いがあるのかを見ていきます。

 

<Excelワークブック(Excelファイル)>

エクセルファイルへの参照型であって、あらゆるタイプのデータテーブルを格納できます。

書式設定やシート、レイアウトや結合セル、複数のデータテーブルなどの情報を持つことができて、

多様なデータを扱うことができます。

 

<データテーブル>

データテーブルは一番単純なタイプの表形式のデータです。

行と列で構成された単純なデータ型を持ちます。

 

途中で抽出した表形式のデータをデータテーブルに格納しておくことが多いです。

 

 

Excelファイルの自動操作


まずはこちらのRPA_bizページのホームにある記事の名前とリンク先を

Excelファイルに保存することを行いたいと思います。

 

1.データスクレイピングからデータをデータテーブルに保存する

ここに関しては、今回のExcelの自動化についてとは少し範囲が違うので詳しくは説明しませんが、

リボンにある「Data Scraping」からウェブページ上の情報を抽出してください。

 

今回は二ページ目までを読み込むことにしました。

これをデータテーブルに書き出してください。

(プロパティの「Output」にデータテーブル名を書き込むだけで可能です。)

 

現在のワークフローはこのようになっていると思います。

 

 

2.抽出したデータテーブルを新しいExcelファイルに保存する

さて、ここからが今回の本題です。

 

まずは「Excel application scope」アクティビティを用意してください。

 

このアクティビティは非常に重要です。

これからのExcelファイルの自動化においては必ずと言っていいほど、このアクティビティを使用します。

 

Excel application scope」アクティビティはシーケンスのように、コンテナの役割を果たします。

このアクティビティ内にこれから使用するExcelのアクティビティを格納してください。

Excelファイルに対する操作を行うアクティビティは

このアクティビティ内でないと機能しないアクティビティばかりなので注意してください。

 

では実際に使っていきます。

 

一番上の「Workbook path」には 使用したいワークブックのパスを入力します。

初期設定は現在のプロジェクトの場所を開きますので、

手動でパスを手入力する場合は現在のプロジェクトからの相対パスを入力してください。

動的なパスを入力する場合などはご注意してください。

 

また、右の「」をクリックすることで実際にファイルを操作しながら、パスを指定することができます。

 

次に、プロパティ欄の「Visible」のチェック欄です。

ここにチェックをすることでこれからのワークフローがExcelアプリを通じて実行されます。

(これにはExcelアプリのインストールが必要です)

 

また、ここにチェックをいれないことでバックグラウンドでこれからのワークフローを行うことが可能です。

 

今回はチェックを入れて行いたいと思います。

さらに、ワークパスには”test_file”と入力しました。

 

もしも、指定のExcelファイルがない場合は自動的に新規作成して保存してくれます。

 

今回はプロジェクトがあるフォルダにファイルを新規作成するので”test_file”とするだけにします。

 

3.シートにデータテーブルを書き込みむ

シート内に書き込むためには「Write Range」アクティビティを使用します。

 

このアクティビティは開始位置を決定して、それ以降にデータテーブルを書き込むアクティビティです。

 

似たものに「Read Cell」アクティビティがありますが、これは一つのセルを書き込むためのものです。

 

プロパティ欄の「Add Header」のチェックをすることで初めの行ににラベルを追加することが可能です。

 

最後に保存が完了したことを知らせるメッセージを表示させて終了です。

 

以下のようなワークフローになっていると思います。

 

 

実行してみると無事にExcelファイルに書き込めていることがわかると思います。

 

 

 

次に、今作成した”test_file”を簡単にカスタマイズしていきたいと思います。

 

具体的には、名前ごとにソートしてみたり、セルを追加したり、読み取ったりを行っていきたいと思います。

 

・名前順にソート

ソートするには「Sort Table」アクティビティを使用します。

この際に注意が必要なのは、Excelで事前にテーブルをつくる必要があることです。

(テーブルの作り方は、範囲をしていして、挿入の中のテーブルボタンを押すだけです。)

 

・最後にデータを追加

Append Range」を使用することによってシートの末尾にデータを追加することができます。

 

ここで注意しなければならないのは、追加できるのはデータテーブルのみであることです。

 

データテーブルを手動で自作する場合は、「Build Data Table」アクティビティを使用して作成してくだいさい。

 

・データテーブルを文字列に変換

Output Data Table」を使用することによって、データテーブルを文字列に変換することができます。

プロパティの「Input」に読み取るデータテーブルを入れて、「Output」に文字列を格納する変数を入れます。

 

Excelのすべてのセルを抽出する

Read Range」を使用することでExcel内のすべてのセルを抽出することができます。

何も指定しなければ、すべてのセルを抽出します。

 

他にもいくつかのアクティビティが存在しますので、UiPathの Excel Activity Packについて

を見ながら使用することをおすすめします。

 

 

まとめ


ウェブページから抽出したデータテーブルをExcelファイルに写して、

簡単なデータの取り扱いを行いました。

 

後編に行うのは、実際のExcelファイルに関数を書き込んだり、

Excelファイルを開かずにバックグラウンドで作業することを行います。

 

後編はこちら

 

 

 

 

topへ
© RPA.biz