RPA初心者向け講座

全情報の取得【シナリオ作成(2)】

2022年11月10日

【広告】RAKUTEN

RPA初心者さま向け講座❾

RPA初心者さま向け講座
RPA初心者さま向け講座

RPA(Robotic Process Automation:ロボティック・プロセス・オートメーション)とは、これまでに人間が手作業で行っていた業務をソフトウェアのロボットに任せ、自動化していく技術のことです。この講座では、RPAの初心者さま向けにWinActorに関するシナリオの作り方やデータ設定の原理について説明。

第1回 RPAとは何か?
第1回 RPAとは何か?

RPA(ロボティック・プロセス・オートメーション)とは、手作業で行っていた業務をソフトウェアのロボットに任せ、自動化する技術です。エクセルを使用して日々の事務を進めておられる方が多いので、作業を自動化で飛躍的に効率が上がります。

第2回 エクセル操作
第2回 エクセル操作

Excel 操作(値の取得)は、エクセル上の情報(データ)をWinActorに「取得」し「変数の設定」で予め指定した変数に取り込む操作、Excel 操作(値の設定)は、WinActorの変数に保管されている情報をエクセル上に書き込む操作です。

第3回 繰り返し操作とカウントアップ
第3回 繰り返し操作とカウントアップ

「繰り返し操作」とは、同様の作業を繰り返し実施したい場合に、事前に繰り返す回数などを指定してその回数分を実施するための操作です。ロボット(パソコン)による単純作業の自動化には欠かせない操作です。カウントアップとペアで使います。

第4回 配列操作の基本
第4回 配列操作の基本

「配列」は、変数の箱を並べたイメージで考えるとわかりやすいと思います。一直線に並べたものが「1次元配列」、平面的に並べたものが「2次元配列」です。1次元配列の場合、自動的に「配列[1]」「配列[2]」「配列[3]」・・・と番号を振ってくれます。

第5回 配列操作の応用
第5回 配列操作の応用

配列操作の応用でセル座標情報を配列に取り込み、コンピューターに覚えさせます。後から実際のデータを自動的に拾いに行くときに便利だからです。配列はインデックスで管理するので、簡単に大量の情報をコンピューターに覚えさせることができます。

第6回 エクセルファイルの自動開閉
第6回 エクセルファイルの自動開閉

多数のエクセルファイルを自動集計するためには、自動的に開いたり、閉じたりすることが必要不可欠です。ファイル名を個別に指定せず、RPAが自動的に順次エクセルファイルを開くと汎用性が高まります。「ファイル一覧(ファイル名)取得」を活用します。

第7回 2次元配列操作
第7回 2次元配列操作

WinActorの2次元配列のイメージは、正に縦横の平面上に箱が並べられているイメージです。エクセルシートとよく似ていると思いませんか?この特徴をシナリオ作成に活かします。2次元配列の割り当てイメージを考えます。エクセルシートと全く同じです。

第8回 セル位置の情報取得
第8回 セル位置の情報取得

エクセルの自動集計に関するシナリオ作成について詳しく説明します。まずは、冒頭の「2次元配列操作(初期化)」及び「グループ:セル位置取得」に関するシナリオ作成について説明いたします。 「グループ」のボックスを設置し、各工程ごとにわけて整理します。

第9回 全情報の取得シナリオ
第9回 全情報の取得シナリオ

全ファイルデータ取得について説明します。各テレワーク報告書から情報を取得し、配列情報として保管します。ポイントは「ファイル一覧(ファイル名)取得」で取得したファイル名を用い、これを「Excel開く(前面化)」を使って開くところです。

第10回 全情報の設定シナリオ
第10回 全情報の設定シナリオ

全ファイルデータ設定について説明します。ポイントは、エクセルシートと2次元配列の構成が類似してるところを応用した情報処理です。2次元配列上での割り当てイメージ図で要確認します。最後に「Excel操作(名前を付けて保存)」で書き込みが完成です。

第11回 全シナリオの総括
第11回 全シナリオの総括

変数の初期値は自分で設定します。その整理はシナリオの最終確認として極めて重要です。ミスの見落としを防ぐために、工程のグループごとに大別し、初期値設定の要否で区別することで見やすく再配置することがお薦めです。エラー発生の最大の原因は変数設定の誤りです。

第12回 シナリオの汎用性(最終回)
第12回 シナリオの汎用性(最終回)

新しい課題にチャレンジするにあたり、変数の初期値設定等を少し変えるだけで、これまでに作成したシナリオ操作の骨組みをそのまま活用できることをご紹介いたします。このシナリオの汎用性の高さを実感してくださいませ。シナリオ自体の構成は何も変更する必要はないのです。

previous arrow
next arrow
RPA初心者さま向け講座
第1回 RPAとは何か?
第2回 エクセル操作
第3回 繰り返し操作とカウントアップ
第4回 配列操作の基本
第5回 配列操作の応用
第6回 エクセルファイルの自動開閉
第7回 2次元配列操作
第8回 セル位置の情報取得
第9回 全情報の取得シナリオ
第10回 全情報の設定シナリオ
第11回 全シナリオの総括
第12回 シナリオの汎用性(最終回)
previous arrow
next arrow

全ファイルデータ取得

シナリオ全体の確認

シナリオ全体
グループ:全ファイルデータ取得

 ゴーヤンのテレワーク報告書を自動的に一つの集計表に集約するシナリオ作成です。今回は「全ファイルデータ取得」について説明いたします。最初にシナリオ全体を確認しましょう。

 2番目のグループ「グループ:全ファイルデータ取得」に設定するシナリオについて説明します。

 

 今回の課題は、2022年8月にゴーヤンがテレワークを実施した計3日間分の報告書(8月4日(木)、5日(金)、8日(月))を一つの集計表に集約する作業なので、各テレワーク報告書からそれぞれ情報を取得し、WinActorの配列情報として、一旦情報を保管する操作についてシナリオを作成します。

ファイル一覧(ファイル数)取得

 「第6回 エクセルファイルの自動開閉」において、「ファイル一覧(ファイル数)取得」と「ファイル一覧(ファイル名)取得」という操作について勉強しました。

 最初に、ゴーヤンのテレワーク報告書(8月4日(木)、5日(金)、8日(月)の計3日間分が保管されているフォルダ内のファイル数を確認します。フォルダ内には、無関係なファイル等は保管せず、ゴーヤンのテレワーク報告書3回分のファイルが保管されているので、最初からファイル数は「3」であることがわかっていますが、最終的にはフォルダ内に大量に保管されたファイルを自動的に処理することを想定していますので、そのつもりで説明をご覧ください。

 「ファイル一覧(ファイル数)取得」のプロパティ画面を開いてみましょう。フォルダ名とフォイル数の欄があります。

 今回、ゴーヤンのテレワーク報告書は「テストフォルダ」というところに入れています。後から変数一覧で、正確な初期値を入れるのを忘れないでくださいね。

「ファイル一覧(ファイル数)取得」のプロパティ画面

繰り返し:対象ファイル数

 次に繰り返し操作を作成します。今回は、繰り返し操作の中に、もう一つ繰り返し操作をセットし、二重構造となりますので、操作が混同しないように、繰り返し操作に名称をつけて区別しています。

 「繰り返し操作:対象ファイル数」は、フォルダ内のファイルの数だけ繰り返すので、こうした名称をつけています。

「繰り返し操作:対象ファイル数」のプロパティ画面

 「繰り返し操作:対象ファイル数」のプロパティ画面を開き、回数欄のところに、上述の「ファイル一覧(ファイル数)取得」のプロパティ画面で設定した変数「対象ファイル数」を設定します。今回、この変数には、すでに「3」が入っているので3回分繰り返されることになります。

ファイル一覧(ファイル名)取得

 次に「繰り返し操作:対象ファイル数」の中に「ファイル一覧(ファイル名)取得」を設定します。

 「Excel開く(前面化)」を用いて、エクセルファイルを自動的に開くには、ファイル名とシート名の指定が必須となっていますが、ファイル名は個々に異なりますので、まず自動的にファイル名を取得します。

「ファイル一覧(ファイル名)取得」のプロパティ画面

 フォルダ名は「テストフォルダ」ですね。

 カウンタ欄には、取得したいファイルの番号、つまり、1番目、2番目、・・・といった感じの値を指定しますが、順番にファイル名を取得したいので変数「ファイルカウンタ」としておきます。

 ファイル名にはWinActorが取得したファイル名を保管する場所です。変数「開くファイル」としておきます。

 種別欄については指定フォルダ内でファイルを見つければtrue、フォルダの場合falseが出力されると書いてあります。特段、出力結果は利用しないので「種別」としてあります。

Excel開く(前面化)

「Excel開く(前面化)」のプロパティ画面

 「ファイル一覧(ファイル名)取得」で取得したファイル名を用いて、これを「Excel開く(前面化)」を使って開きます。

 ファイル名の欄は上述の「ファイル一覧(ファイル名)取得」のプロパティ画面で設定した変数「開くファイル」を用います。シート名は「値⇒Sheet1」と指定します。

繰り返し:情報更新

 繰り返し回数の設定
各テレワーク報告書からの情報取得シナリオ

 「繰り返し:情報更新」は、各ファイルごとの情報の読み取りを行う繰り返し操作です。

 配列情報として保管した「セル座標ファイル」のセル位置情報を一つずつ取り出し、「Excel操作(値の取得)」で各報告書に記載されている全情報を読み取り、次にWinActorの配列情報として保管します。

 各報告書ファイルに16カ所の情報が記入されていますので、繰り返し回数は「16」です。

 

 2次元配列操作(情報取得)

 2次元配列の1行目に「セル座標ファイル」から読みだした情報を保管していますので、「2次元配列操作(情報取得)」によってこれらの情報を変数に取得します。

2次元配列上での割り当てイメージ
「2次元配列操作(情報取得)」のプロパティ画面

 「2次元配列操作(情報取得)」のプロパティ画面を開くと、配列名、インデックス(行)、インデックス(列)及び取得情報の欄があります。

 配列名には変数「配列」を用いています。2次元配列の1行目に「セル座標ファイル」から読みだした情報を保管していますので、インデックス(行)では「値⇒1」と指定します。

 

 インデックスの列は、2次元配列上の1列目から16列目までに保管されていますので、変数「配列C」として、繰り返し操作により、一つずつ値を動かします。変数の名称は何でもよいのですが「配列C」という名称にしたのは、エクセルの座標位置を示す「R1C1形式」に対応させて考えるとイメージが整理しやすいので、この名称としています。

 2次元配列から取り出した情報は、取得情報として変数「指定セル」に保管します。

 Excel操作(値の取得)

 「Excel開く(前面化)」で開いているゴーヤンのテレワーク報告書の1番目ファイルから情報を読み取ります。

「Excel操作(値の取得)」のプロパティ画面

 Excel操作(値の取得)については、これまでに十分説明しましたので、簡単に記載します。

 セル位置は、先ほど2次元配列から取り出して、「指定セル」に取得した情報を使います。

 Excel操作(値の取得)で取得した情報は変数「取得情報」に保管します。

 2次元配列操作(情報更新)

 Excel操作(値の取得)で変数「取得情報」に保管した情報を2次元配列に入れて保管します。再度、2次元配列上での割り当てイメージ図をご覧ください。「第7回 2次元配列操作」で説明したとおり、集計表のエクセルシートと同じ座標位置を2次元配列上に割り当てることにしましたので、情報は5行目から順に2次元配列操作(情報更新)によって書き込んでいきます。

2次元配列上での割り当てイメージ
「2次元配列操作(情報更新)」のプロパティ画面

 「2次元配列操作(情報更新)」のプロパティ画面を開きます。

 インデックス(行)には変数「配列R」を使います。変数一覧において初期値を「5」と設定しておけば、2次元配列の5行目から情報更新が行われます。インデックス(列)は変数「配列C」ですね。変数「取得情報」の値を配列[R,C]に保管します。

 

 カウントアップ(配列C)

 「繰り返し:情報取得」においては、1列目から16列目まで一つずつ動かしていくので、変数「配列C」の値をカウントアップで一つずつ値を増やします。

 16回の繰り返し操作を終えると次に進みます。

Excel操作(保存なしで閉じる)

Excel操作(保存なしで閉じる)のプロパティ画面

 作業を終えたのちに、「Excel操作(保存なしで閉じる)」で自動的にファイルを閉じます。

 実行結果は特に利用しませんが、変数の設定が求められているので、便宜的に変数「管理」として設定しています。

変数値設定

 ノードの中に「変数値設定」という操作があります。シナリオの途中で変数の値を変更したいときに使います。各報告書における値の取得では、セル座標ファイルの座標位置に合わせて、1から16までの操作を繰り返して順に情報を読み取っていきますので、配列の最後の列は16になっていますが、次のファイルでは、再び1から始める必要があるので、次の繰り返しに行く前に、変数「配列C」の値を「1」にセットするために用います。カウントアップ操作と同様に、プロパティ画面での設定はとてもシンプルなので簡単です。

カウントアップ

 カウントアップ操作は2つ必要です。一つはファイルが変わるたびに配列の行をずらす操作、そしてもう一つは「ファイルカウンタ」です。これはファイル一覧(ファイル名)取得のところで登場しました。順番にファイル名を取得するには、同じファイルを開かないように、一つ目、二つ目、三つ目・・・とWinActorが数を数える必要があります。そこで、カウントアップで一つずつ値を増やします。

 ちなみに、WinActorでは「ファイルカウンタ」の初期値をゼロ「0」と設定する必要がありますので注意してください。人間は通常、1、2、3、・・・と数えますが、WinActorは、0、1、2、・・・と数えます。数え方が違うだけなので「まあ、そういうものだ。」と理解していただければ特に気にすることはないと思います。

変数一覧による初期値設定

 最後に、変数一覧を呼び出し、設定した変数の確認と初期値の設定を行いましょう。

 初期値の設定が必要な変数は「テストフォルダ」、「ファイルカウンタ」、「配列」、「配列R」、「配列C」です。「テストフォルダ」については、ご自身のパソコン上での正確な保管場所を登録してください。「ファイルカウンタ」、「配列」、「配列R」、「配列C」については、上述のとおりに設定します。

変数一覧
ゴーヤン
ゴーヤン

皆さま、大変お疲れさまでした。
前回に引き続き、本格的なシナリオの説明に入ってきましたので、少し難しくなってきましたが大丈夫でしょうか? 次回は、2次元配列に保管した情報を集計表に書き出すシナリオについて勉強します。
お楽しみに!

【広告】U-NEXT


【広告】アソビュー