データ一覧で取込、処理した結果のExcelファイル(OK/NGなど処理結果をセット済み)を、ノードの命令を使って保存(上書き保存や別名)する方法を教えて下さい。
データ一覧で取込、処理した結果のExcelファイル(OK/NGなど処理結果をセット済み)をノードの命令を使って保存(上書き保存や別名)する方法を教えて下さい。
===
データ一覧での取込は非常に便利で、処理結果も変数にセットするだけで画面上のExcel上に反映されます。
ですが、この処理済みのExcelファイルに対しては、手動で保存するようにマニュアルには記載されています。
やりたいことは、この画面上に見えているExcelファイルを証跡として残したいので、シナリオとして自動で上書き保存(または別名で保存)したいです。
よろしくお願いします。

Sugi346さま
データ一覧にExcelファイルを取り込んだ際の保存方法ですが、サンプルとしてフローを作成してみました。
シナリオ下部に設置した「ループの最後で分岐」のTrueにデータ一覧で使用したExcelファイルのパスを使用して、「上書き保存して閉じる」または「名前を付けて保存して閉じる」を設置することで、表示されているデータ取り込み用Excelファイルが保存されます。
ただし、注意点がございます。
■データ一覧に取り込みを行った際に開かれるExcelファイルを閉じてしまうと、WinActor側でエラーを返してしまいます。
図のシナリオの「上書き(名前を付けて保存して閉じる」を「上書き(名前を付けて)保存する」に変更することでエラーの回避はできますが、通常と同様にシナリオ終了時にデータ一覧を保存するかを聞いてきますので、図ではWinActorを終了することで、確認されないようにしています。
自動的に処理を行うのであれば、起動用ショートカットを作成することでそれも可能です。
上手く伝わったでしょうか?
不明点など有りましたら、コメント頂ければ説明させて頂きます。
よろしくお願いいたします。

素早い回答、ありがとうございます。
以下、不明点です。
「ループの最後で分岐」のTrueにデータ一覧で使用したExcelファイルのパスを使用・・・
とありますが、以下の部分の補足をお願いします。
①分岐の判定方法
・ループ最後を判定する簡易な方法はありますか?
・それとも、処理上で自分で判断させるのですか?
②上書き保存して閉じるときのファイルパス
(データ一覧に読み込むファイル名が変動する場合)
・ファイルパスとして特殊変数の$DATALIST-FILEを使うのですか?
・それとも独自変数に、特殊変数の$DATALIST-FILEをコピーして使うのですか?
以上、よろしくお願いします。

sugi346様
ご質問ありがとうございます。
回答させていただきます。
①分岐の判定方法、
ライブラリ⇒01_WinActor制御⇒04_ループ関連の【ループの最後で分岐】を使用してください。
当ノードの分岐部分には予めデータ一覧の最後を判定する条件が設定されているため、そのままTrue部分に処理を入れることで、全データの処理が終わった時点で処理を行うシナリオが作成できます。
ですので、結論としては、自動的に判定できます。
②上書き保存して閉じるときのファイルパス
仰るように特殊変数の$DATALIST-FILEを使用します。
ファイル名に直接指定してやることで可能です。
上記にスクリーンショットを追加しておきますので、ご確認ください。
以上、よろしくお願いいたします。

KNさま
【ループの最後で分岐】命令を知りませんでした。勉強になります。
この命令でループ最後を検出できました。
また、上書き保存でのメッセージ出力、およびWinActor終了での回避も
うまくいきました。
ただし、こちらでテストした結果、データ一覧の最後のデータに対する処理結果が
変数一覧に現在値としてセットされるのですが、データ一覧画面やExcelには
反映されませんでした。もちろん途中の処理結果はうまくセットできています。
保存前に待機ボックスで止めてみたのですが、反映されずです。
※どうも、次のデータを処理するときに、反映するように見えます。
終了のためのダミーデータを最後に入れておくなど、ちょっとした仕掛けが
必要と思われます。

sugi346様
ご連絡ありがとうございます。
こちらでも最終行の確認を行いましたが、更新されていませんでした。
今回は検証が足らず申し訳ございませんでした。
色々と検証もしてみたのですが、仰る通り、最終データのみシナリオの終了次点でセットされるのがWinActorの仕様の様で、最下部にダミーデータをセットする以外回避策は無いように感じました。
ダミーデータを設けることで不備が生じる場合には、最終行のデータを削除するシナリオを作成して頂き、本件の【ループの最後で分岐】のTrue内でExcelファイルの上書きを行った後に、シナリオGotoで最終行削除用シナリオを起動するという方法もございます。
以上となります。
また何かございましたらお申し付けください。
よろしくお願いいたします。
みなさま
素早い回答を頂き、とても助かっています。
データ一覧での処理が機能向上すると、ますます使い勝手が良くなると思います。
今回、【ループの最初で分岐】や【ループの最後で分岐】など知ることができ、勉強になりました。
ありがとうございました。