【第71回】ロータス博士のWinActor塾~データ一覧Ⅱ
今回は実際にデータ一覧の機能を使ってみるぞ。
前回で機能や画面の見かたはだいたいわかりましたけど
やっぱり使ってみないとわからないですよね。
そうじゃな。
まずはデータ一覧の基本、エクセルファイルを読み込んで使ってみよう。
ファイルの準備も簡単じゃからな。
今回もサクサクいくぞ!ついてくるのじゃ!
今日はなんだかテンション高いなあ。
データの準備
データ一覧を使う前に、読み込むためのエクセルファイルを作成しておきましょう。
ファイルの作成場所は任意ですが、作成後は移動しないように注意してください。
データ一覧で扱うデータはテーブル形式のものになります。
わしの用意したデータをお見せしよう。
ファイル名は「テストデータ.xlsx」で商品名と価格の2つの項目を持っておる。
今回は3行分のデータを準備したぞ。全部わしの好物で揃えてみたのじゃ!
これがテーブル形式のデータかぁ。
博士の好きなもの意外と洒落てますね。
あれ?これ4行ありますよ。
これで良いのじゃ。最初の行は見出しだと思ってくれ。
この行をヘッダというのじゃが、WinActorではヘッダ有りで読み込まれる。
逆にヘッダが無いと読み込むときにズレてしまうので気を付けるのじゃ。
データの読み込み
エクセルファイルの準備ができたら保存して、データ一覧で読み込んでみましょう。
データ一覧の「データインポート」ボタンをクリックしてください。
クリックすると、ファイルを開くダイアログが出てきます。
先ほど作成したファイルを選択し、「開く」を押しましょう。
正しく読み込まれると、データ一覧にエクセル内のデータが入ります。
次のように表示されていれば成功です。
ヘッダの下から1~3と番号がついているじゃろう。
この状態になれば成功じゃ。
ヘッダを用意しないとこんなこと↓になるぞ。
うわ、本当だ。
最初のデータが見出し扱いで、実際に使われるのが2行だけになっちゃってますね。
こんなことにならないよう、しっかりヘッダは作っておくのじゃぞ。
お次は読み込んだデータの使い方じゃ。
データの利用
データ一覧で読み込んだデータは変数に格納して利用することができます。
格納された変数はデータ一覧と連携され、シナリオ内で変数を操作することで読み込み元データを更新することもできます。
今回は単純に、読み込んだデータを表示し、シナリオがどのように動くのかを覚えていきましょう。
データ一覧によるループ実行
データ一覧を使用すると、WinActorはデータ1行ごとにシナリオを1回実行します。
例えば今回のデータは3行なので、シナリオの「開始」から「終了」までを3回実行することになります。
データ一覧を使った変数の初期化
データ一覧にデータを読み込ませると、変数とデータが関連付けられます。
既にある変数に勝手に連携されるということはありません。ヘッダ部分に指定したデータ名と変数の名前が一致していることが条件です。
関連付けされた変数は、ループする毎にシナリオの開始箇所でデータ一覧から変数にデータが引き渡されます。
実際にシナリオを編集して試してみましょう。
変数一覧のウィンドウから、今回作成したデータ名(ヘッダの名称)と同じ名前の変数を追加してください。
初期値の設定は不要です。
シナリオには、変数にデータが引き渡されているか確認するための一時停止用に「待機ボックス」をひとつ配置します。
一時停止が目的なので、プロパティは触らなくても大丈夫です。
この状態で実行すると、データ一覧のデータ行数が3つなのでシナリオは3回ループします。
そして1ループ毎に待機ボックスで一時停止されます。
停止状態の時に、変数一覧ウィンドウで「現在値」を確認してみましょう。
変数の中身はどのように変化するでしょうか。
シナリオを実行すると、データ一覧の上から順にループし
データ名に対応した変数にデータが格納されていきました。
なるほど、こうやってデータを扱う訳ですね!
全部のシナリオに使えるというわけではなさそうですけど
データ一覧もなかなか、可能性の獣ですね。
どちらかというと、表形式の外部データと連携して
それ自体を操作するようなシナリオに最適じゃな。
今回は読み込むだけじゃったからイマイチかもしれんが・・・。
データの行数分ループもなんとか制御したいですね。
省略したいデータがあったら困るかも。
それに関してはチェックボックスで制御が可能じゃ。
どれ、ちょっと尺が伸びてしまうがせっかくじゃからやってみよう。
(しまった!余計なことを言ってしまった。)
チェックボックスによる使用データの制御
データ一覧を使用したループ処理では、使用しないデータ行のチェックを外すことでその行をスルーすることができます。
先ほどのシナリオを少し改変して試してみましょう。
一時停止用に配置した「待機ボックス」のプロパティを変更して、「商品名」の変数の値を表示させます。
データ一覧の2番目のデータを無視するようにチェックボックスを外してみましょう。
ここまで変更できたら実行してみます。
2行目のチェックを外したことで「ミラノ風ドリア」が除外されました。
チェックが付いているのは2行分だけなので、ループ回数も2回になりました。
このように、チェックボックスをうまく使うことで、変更したくないデータ等を無視することができます。
なるほどなるほど。バッチリ理解しました。
ちょこちょこ出てくるデータの変更っていうのはあれですか?
もしかして読み込みだけじゃなくて書き込みもできるってことですか?
察しが良いのう。
おぬしの言う通りデータ一覧は読み込むだけではないのじゃ。
ということで次回は書き込みについても学んでいこう。
書き込みまでできちゃうんですか!
思ってたよりできることが多くてびっくりですよ。
まあ使いどころは限定されてしまうがの。
覚えておいて損はない機能じゃろう。
では次回も頑張ろう!
関連記事こちらの記事も合わせてどうぞ。
2024.11.05
【第105回】ロータス博士のWinActor塾~新しい画像マッチング画面
2024.09.27
【第104回】ロータス博士のWinActor塾~ガイド利用シナリオ(作成編)
2024.09.10