コラム

【WinActor 2日目】ExcelデータをWEBページに入力するシナリオの作り方

皆様、こんにちは!今回はExcelデータをWEBページにコピペして入力するシナリオの作り方をご紹介します。どうぞ最後までお付き合いください!また前回のコラムにて私の自己紹介と簡単に本シナリオ作成までについて紹介しているのでぜひそちらもご覧頂ければ嬉しいです。前回コラムはこちらから


今回作成するシナリオの概要

今回はExcelデータをChromeで用意したデモ画面にコピペして登録する作業のシナリオをご紹介します。このシナリオを応用すれば面倒な大量データの転記作業の自動化に成功すると思います。

■ サンプルのダウンロードはこちらから
〇デモ用サイトのリンクはこちらから
〇サンプルExcelデータのダウンロードはこちらからサンプルデータ
〇サンプルシナリオのダウンロードはこちらからデモ用

【Excelデータの転記後のデモ画面になります。項目数が多いですね。】

作業1 WEBページを起動

まずWEBページを起動させます。起動方法には2つの方法があります。

〈作り方1〉手動で画面を開いておいてWinActor(ウィンアクター)でシナリオを実行する
〈作り方2〉最初にWinActor(ウィンアクター)で画面を開くところから実行させる

私はいつも手動で画面は準備しています。
というのも使いたいブラウザのバージョンによってWinActor(ウィンアクター)に対応していない場合がありエラーになってしまうことがあるので手動で開いています。
ですが今回は〈作り方2〉の方法についても紹介します。

<手順1>『ファイルと関連づいているアプリ起動を使う』ライブラリを配置

ライブラリ>13_ファイル関連>『ファイルと関連づいているアプリ起動を使う』

<手順2>プロパティ画面を開いたら、設定を入力していきます。

パス・・・値にURLをコピペ

※デスクトップにあるショートカットのパスではエラーが出ます。

【プロパティ画像です。】

設定が完了したらWinActor(ウィンアクター)を実行してChrome(クローム)がちゃんと起動するかテストしてみてください。起動したら成功です!

作業2 ExcelデータをWinActor(ウィンアクター)に読み込ませる

次にExcelデータの情報・値をWinActor(ウィンアクター)に読み込ませます。手順は以下です。
【Excelを扱う手順書です。】

 

<手順1>Excelデータを変数に登録

ExcelデータをWinActor(ウィンアクター)に認識させます。認識には「変数」を使用します。

【変数のイメージについては画像をご覧ください。】

変数を使う事でExcel自体の所在を登録できたり値の代入がスムーズに行えたりします。
またWinActor(ウィンアクター)ライブラリの設定の際に多々変数が求められます。
作り方は2つあります。

<作り方1>変数一覧から作る

【『表示』タブから『変数一覧』をクリックすると画面下にこのような一覧が現れます。】

■設定内容
1. 緑色の十字をクリックして追加します。
2. 分かりやすい名前を付けます。
3. 初期値にURLやExcelのパスを入れます。

※Excelパスを初期値に設定する際は「“」を削除し拡張子(.xlsx)まで追加する必要があります。
(今回はExcelデータの値に紐づく変数を作り、「サンプルデータ」にExcelブックのパスを入れ、「デモWEBサイト」にデモ画面のURLをそれぞれ初期値に入れました。)

<作り方2>ライブラリのプロパティ内で作る

ライブラリを作成するときに都度、追加する。
※初期値設定など細かな設定はできない

<手順2>ExcelをWinActor(ウィンアクター)で開く

WinActor(ウィンアクター)でExcelを扱う際には『Excel開く(前面化)』ライブラリを使い、Excelブック自体を開く必要があります。

ライブラリ>18_Excel関連>01_ファイル操作>Excel開く(前面化)

【プロパティ画像です。】

■設定内容
ファイル名・・・Excelパスを初期値に設定した変数名
シート名・・・作業対象のシート名を直接書き込みます。

設定が完了したら部分実行でテストしてみてください。Excelブックが自動で開けるはずです。開けない場合はパスやシート名がちゃんと指定されているか確認してみてください。

<手順3>データの最終行を認識させる

次に値を読み込ませたいと思います。
はじめに読み込む前に値がどこの行まであるのかWinActor(ウィンアクター)に認識させる必要があります。
こちらの『Excel操作(最終行取得その1)』ライブラリを使用します。

ライブラリ>18_Excel関連>03_行列操作>Excel操作(最終行取得その1)

【プロパティ画像です。】

■設定内容
ファイル名・・・作業対象ブック 例)「サンプルデータ」変数
シート名・・・作業対象シート  例)sheet2
※空白の場合は開いている最初のsheetが自動的に作業対象となる。
最終行・・・WinActor(ウィンアクター)が認識した最終行の情報を格納するための変数
例)そのまま『最終行』と名前を付けた

<手順4>データの値を読み込ませる

最終行の設定が完了したら、いよいよ値を読み込みです。次の『Excel操作(行の読み取り)』ライブラリを使用します。

ライブラリ>18_Excel関連>03_行列操作>Excel操作(行の読み取り)

【プロパティ画像です。】

■設定内容
行(自動カウントアップ)・・・読み込む最初の行を変数として設定
今回の場合は「データ取得行」変数と命名して作成しました。そのあとに変数一覧より初期値を2に変更します。
(値は2行目からある為)
ファイル名・・・作業対象ブック
シート名・・・作業対象のsheet
列・・・Excelブックの値が入っている列を設定
※デフォルトはE列までしかないのでスクリプトを直接変更すると追加できます(下の画像を参照ください)

【赤枠のスクリプトをスクリプトの続きにコピペしスクリプト内に記載されている列(アルファベット)を変更すると追加されます。】

スクリプトを変更したらプロパティ内の設定を確認してみてください。
列(アルファベット)項目が追加されているはずです。

以上でExcelからデータを取り込む準備ができました!

作業3 WEBブラウザにカーソルを合わせる

入力設定をする前にWinActor(ウィンアクター)がしっかりとデモ画面を認識できるようにカーソルを合わせる必要があります。
以下のエミュレーションライブラリを使用します。

ライブラリ>04_自動記録アクション>01_デバック>エミュレーション

【このようなエミュレーションを組みました】

■設定内容
名前・・・シナリオ上でも分かりやすいようにつけるとよいかと思います。
コメント・・・空欄でも大丈夫です
ウィンドウ識別名・・・隣にある水色の丸い箇所をクリックして使いたいウィンドウにカーソルを合わせると設定できます。
操作・・・キーボード操作やマウス操作ができます。

作業4 デモ画面の入力項目をWinActor(ウィンアクター)にクリックして変数値をコピペ

<手順1>クリップボードライブラリを使用して変数値をコピー
<手順2>エミュレーションライブラリを使用してデモ画面にペースト

【シナリオではこのようになります。】

<手順1>クリップボードライブラリを使用して変数値をコピー。

以下のライブラリを使用します。

ノード>アクション>クリップボード

【プロパティ画像です。】

■設定内容
名前・・・わかりやすいように変更も可能です。
コメント・・・空欄でも大丈夫です。
クリップボードへ値を設定・・・今回はこちらにチェックをします。設定値を入力したいデータに対応する変数に設定します。

<手順2>エミュレーションライブラリを使用してデモ画面にペースト

以下のライブラリを使用し画像のように設定しました。

ライブラリ>04_自動記録アクション>01_デバック>エミュレーション

【プロパティ画像です。】

■設定内容
1. Ctrl + Vで貼り付け
2. Tabキーで次の入力項目に移動

このシナリオを入力項目の数だけ作ります。
作るとシナリオ工程数が多くなり複雑になるのでわかりやすい名前を付けたりグループにまとめましょう。

【項目分類でグループに分け視覚的に分かりやすいシナリオを作りました】


作業5 登録ボタンクリック

デモ画面上の「登録する」ボタンをクリックさせるシナリオを作っていきます。
こちらも先ほどと同じエミュレーションライブラリを使用します。

【プロパティ画像です。】

■設定内容
1. Tabキーで『登録する』ボタンに移動
2. Enterキーでクリック

この方法以外にもブラウザのボタンをクリックさせるには画像マッチングでの方法があります。こちらはまた次の機会に紹介したいと思います。
<h2作業6 繰り返し設定の方法(回数を指定した繰り返し)

まず繰り返しライブラリをシナリオ作成画面にドラッグで配置します。次に今まで作ったシナリオをドラッグで繰り返しグループに追加します。
ノード>フロー>繰り返し

【今までのシナリオを繰り返しグループに配置した画像です。】

【今回は5回、登録を繰り返すシナリオにしました。】

■設定内容
名前・・・分かりやすい名前を入れる
回数・・・チェックを入れる
値・・・繰り返しさせたい回数の数字を整数で入れる

繰り返しの方法にはいくつか種類がありますがこちらもまた次の機会に紹介できたらと思います。

まとめ

今回はExcelデータをWEBページにコピペし登録作業をさせるシナリオについてご紹介しました。いかがでしたでしょうか。なかなか複雑そうですね。ポイントとしては人間が手作業で行う工程を丁寧にシナリオに写すこととコピペしたい情報や項目の設定がずれないことだと思います。皆さんもぜひ試してみてください。WEBブラウザで検索したページをPDF化して保存するシナリオについて紹介したいと思います。ご期待くださいませ。

小話

今回は最終行取得の種類について紹介したいと思います。
私も最初ライブラリ一覧をあさっていた時になぜこんなに種類があるのか疑問に思っていました。

【特徴をまとめてみました。】

1・・・WinActor(ウィンアクター)が認識しているブックや表の最終行を認識して取得します。また値がなく空欄の場合でも書式設定がされていると最終行として取得します。

2・・・検索対象の開始と列を指定して最終行を取得します。また最初に値が入っていない空白をマイナス1としてカウントして最終行を取得します。例えば表のタイトルを開始行として次の行が空白の場合はタイトル行が最終行として取得されます。

3・・・列を指定して最終行を取得します。また必ず2行目から検索を開始します。

4・・・列を指定して最終行を取得します。
上の3と違うのは指定した列の一番下のセル(空欄)からCtrl+upしたセルの行を取得する点です。

【A列、B列に指定した時の取得結果がこちらです。】