UiPath 基本的なExcel自動操作方法

2019年11月19日

レコーディングの記事に引き続き

Microsoft Excelを自動操作する方法を紹介します。

日本の業務はExcelを中心に

回っていると言ってもいいレベルに

多用されているアプリケーションです。

ブラウザと共にRPAによる

自動化の中心となるでしょう。

作成する自動化ツール

Excelで転記を行う例で紹介します。

元あるファイルのセルの値を

新規ファイルにコピーして保存します。

最後に完了メッセージを表示して終了します。

作成手順

新規プロジェクト作成

UiPathを起動し「新規プロジェクト」より

「プロセス」を選択します。

UiPathを起動し「新規プロジェクト」より「プロセス」を選択

「新しい空のプロセス」が表示されるため

任意の名前と場所を設定し

「作成」ボタンを押下します。

「新しい空のプロセス」が表示されるため任意の名前と場所を設定し「作成」ボタンを押下

UiPathの画面が起動します。

下の「アクティビティ」タブを選択し

「ワークフロー」より「制御」を開きます。

「シーケンス」アクティビティが表示されるので

それをデザイナーパネルにドロップします。

「アクティビティ」タブを選択し「ワークフロー」より「制御」を開く。「シーケンス」アクティビティが表示されるのでデザイナーパネルにドロップ

「デザイナー」パネルに「シーケンス」が追加されます。

UiPathで自動化する際は最初に土台として

「シーケンス」か「フローチャート」

設置する必要があります。

「フローチャート」については

別の記事で説明します。

「デザイナー」パネルに「シーケンス」が追加

転記元Excelからデータを取得

次に「アプリの連携」と「Excel」を開き、

「Excel アプリケーション スコープ」を

先ほど追加した「シーケンス」にドロップします。

「アプリの連携」と「Excel」を開き、「Excel アプリケーション スコープ」を先ほど追加した「シーケンス」にドロップ

次に「Excel アプリケーション スコープ」をクリックし

「プロパティ」パネルの「読み込み専用」をチェックします。

(読み込むファイルには要チェック)

そして「ファイル選択」ボタンをクリックします。

「Excel アプリケーション スコープ」をクリックし、①「読み込み専用」をチェック、②「ファイル選択」ボタンをクリック

ファイルダイアログが表示されるため

転記元にしたいファイルを選択します。

すると選択したファイル名が表示されます。

これによりExcelファイルが読み込まれます。

Excelアプリケーションスコープの中が

開いたExcelファイルへの操作になります。

転記元にしたいファイルを選択した結果、選択したファイル名が表示

転記元のファイルはA1セルと

A2セルに値が入っています。

これを転記していきます。

転記元のファイルの中身。A1セルに150、A2セルが280

次に「セルの読み込み」を

「実行」にドロップします。

「セルの読み込み」を「実行」にドロップ

「セルの読み込み」が表示されます。

「セルの読み込み」が表示

次に転記元の値を受け取る「変数」を作ります。

「変数」とはプログラミングの要素で

データに名前を付けて

保存する箱のようなものです。

変数を作成するためには

まず「変数」タブ→「シーケンス」→

「変数の作成」の順にクリックします。

「変数」タブ→「シーケンス」→「変数の作成」の順にクリック

変数が一つ追加されるので

下記のように設定します。

項目設定値
名前A1セルの値
変数の型Object
スコープシーケンス

名前にはルールがありますが、ここでは割愛します。

変数の型はどんなデータが入るかですが、

慣れないうちは何でもアリなObjectにします。

スコープは変数が有効な範囲ですが、

ここも慣れないうちは

最上位のシーケンスにします。

規定値は最初の変数の中身です。

重要ですがここでは割愛します。

「A1セルの値」変数が追加された状態

同様に「A2セルの値」も作成しておきます。

「A2セルの値」変数が追加された状態

追加済みの「セルを読み込み」を再度クリックし

「プロパティ」パネルの「結果」に

「A1セルの値」変数を設定します。

これによりSheet1のA1セルから

「A1セルの値」変数にセルの値を

保存する動きになります。

「セルを読み込み」を再度クリックし「プロパティ」パネルの「結果」に先ほど作成した「A1セルの値」変数を設定

同様に「セルを読み込み」をもう一つ追加し、

こちらはA2セルを読み込むようにしましょう。

「セルを読み込み」をもう一つ追加

セルを"A2″に変更し

(なおシート名を変えると取得対象シートが変わります)

結果に「A2セルの値」変数を設定します。

二つ目の「セルを読み込み」をA2セルからの読み込みに変更

これにより転記元ファイルから

データをUiPathに読み込む動作が完成です。

転記先ファイルの作成とデータ書き込み

次に新規ファイルを作り

転記して保存する動作を作ります。

それには「Excel アプリケーション スコープ」を

「シーケンス」にドロップして追加します。

「Excel アプリケーション スコープ」を「シーケンス」にドロップして追加

「ブックのパス」に新規作成したいファイル名を設定します。

この設定は"を囲む必要があります。

このように数値でも変数名でもない値は

“で囲む必要があります。

このあたりのルールはExcelと同様です。

「ブックのパス」にファイル名”新規ファイル.xlsx”を設定

「セルに書き込み」を新規ファイルの

「Excelアプリケーションスコープ」の

「実行」にドロップして追加します。

「セルに書き込み」を新規ファイルの「Excelアプリケーションスコープ」の「実行」にドロップして追加

「プロパティ」パネルの「値」に

下記のように設定します。

"=" & A1セルの値.ToString & "*2"
「プロパティ」パネルの「値」に「"=" & A1セルの値.ToString & "*2"」を設定

これにより新規ファイルのA1セルに

「=150*2」という数式が自動入力されます。

この「値」の設定もExcelの数式とほぼ変わりません。

&は文字列識別子です。

「A1セルの値」は転記元セルから

取得したA1セルの150です。

.ToStringは変数の型を文字列に変換する物です。

Excelでは自動的に変換してくれるため

気になりませんがUiPathやプログラミングでは

人が明示的に指定する必要があります。

転記元ファイル
転記元ファイル

同様にA2用の「セルに書き込み」を作成します。

今度は範囲を"B1″にして数式を下のようにしてみます。

"=" & A2セルの値.ToString & "*2"

これに新規ファイルのB1セルに

転記元ファイルの280を2倍する数式が記入されます。

「範囲」に"B1"を設定し、「プロパティ」パネルの「値」に「"=" & A1セルの値.ToString & "*2"」を設定

最後に完了を表示するメッセージを表示します。

それには「メッセージボックス」を

「シーケンス」にドロップします。

(Excelの外に設置)

「メッセージボックス」を「シーケンス」にドロップ

「プロパティ」パネルの「テキスト」に

表示したい任意のメッセージを設定します。

ここも文字列のため"で囲む必要があります。

「プロパティ」パネルの「テキスト」に表示したい任意のメッセージを設定

これにより転記する自動化ツールの完成です。

実行するには「デザイン」リボンの

「開始」ボタンを押下します。

「デザイン」リボンの「開始」ボタンを押下

ツールの実行が完了すると

メッセージボックスが表示されます。

転記完了のメッセージボックス

最初に設定した「場所」に

「新規ファイル.xlsx」が作成されています。

最初に設定した「場所」に「新規ファイル.xlsx」が作成

それを開くと転記した上で2倍する数式が入力されています。

新規ファイルの中身

次の記事

次回はWebブラウザを自動操作する基本的な方法を

入力フォームを例に紹介します。

関連記事

Excel アプリケーションスコープ アクティビティ

Excel セルを読みこみ アクティビティ

Excel セルに書き込み アクティビティ

メッセージボックス アクティビティ

フォローする