WinActor

2021.01.15
サンプルシナリオ Excel関連 変数
複数のCSV・Excelファイルを1つのCSVファイルにまとめるサンプルシナリオ

WinActorのライブラリを使用して、複数のCSV・Excelファイルを1つのCSVファイルにまとめるサンプルシナリオからローカル変数の使用法を理解します。

サブルーチン(ローカル変数)の利用方法学習に利用することができます。

本コンテンツをダウンロードする前にこちらの利用条件を必ずご確認いただき、内容に同意をしたうえでダウンロードしてください。 また、"コンテンツの利用条件"は下のボタンからダウンロードし、お手元で保管してください。

サンプルシナリオ概要

はじめに

WinActorのライブラリを使用して、複数のCSV・Excelファイルを1つのCSVファイルにまとめるサンプルシナリオ(以降、本サンプルシナリオ)について説明します。

本サンプルシナリオの概要

本サンプルシナリオは、以下の処理を行います。

  • 指定した対象ファイル一覧の一覧行数を取得します。
  • 一時ファイル、社員情報ファイル(出力用CSVファイル)のパスを作成します。
  • 一覧行数が1行以上存在する場合、社員情報ファイルを作成します。
  • 対象ファイル一覧に記載された順に、対象ファイルの一覧行数とファイル名を取得し、下記を一覧行数の回数分繰り返します。
    • 対象ファイルから拡張子を取得します。
    • 対象ファイルの拡張子をCSV/Excelの判定をします。
      • CSV
        • 社員情報ファイルに対象ファイルを追記します。
        • 社員情報ファイルの先頭行に見出しを削除します。
        • 終了セルに設定したセル範囲に、ファイル名を設定します。
        • 社員情報ファイルを上書きします。
      • Excel
        • Excelを一時ファイルに変換します。
        • CSV変換実行結果チェックがtureだった場合、社員情報ファイルに一時ファイルを追記します。
        • 社員情報ファイルの先頭行に見出しを削除します。
        • 終了セルに設定したセル範囲に、ファイル名を設定します。
        • 社員情報ファイルを上書きします。
        • 一時ファイルを削除します。

使用するWinActorモジュール

本サンプルシナリオでは、以下のWinActorモジュールを使用します。

  • ノード/ユーザ/待機ボックス
  • ノード/変数/変数値設定
  • 01_WinActor制御/02_シナリオ制御/シナリオ停止.ums6
  • 01_WinActor制御/08_実行ログ/ログメッセージ出力.ums6
  • 07_文字列操作/01_変換・整形/文字列置換.ums6
  • 07_文字列操作/03_連結/文字列の連結(2つ).ums6
  • 07_文字列操作/03_連結/文字列の連結(3つ).ums6
  • 13_ファイル関連/01_テキストファイル操作/テキストファイル書込.ums6
  • 13_ファイル関連/01_テキストファイル操作/テキストファイル行数取得.ums6
  • 13_ファイル関連/02_ファイル操作/Zip関連/ファイル削除.ums6
  • 13_ファイル関連/05_ファイル名/シナリオフォルダのファイルパス.ums6
  • 13_ファイル関連/05_ファイル名/フォルダパスとファイル名の連結.ums6
  • 18_Excel関連/01_ファイル操作/Excel操作(CSV形式で保存).ums6
  • 18_Excel関連/01_ファイル操作/Excel操作(保存なしで閉じる).ums6
  • 18_Excel関連/01_ファイル操作/Excel開く(前面化).ums6
  • 18_Excel関連/03_行列操作/Excel操作(最終行取得 その4).ums6
  • 18_Excel関連/11_カーソル操作/Excel操作(カーソル位置の読み取り).ums6
  • 18_Excel関連/11_カーソル操作/Excel操作(カーソル移動).ums6
  • 18_Excel関連/12_書式/Excel操作(値の設定).ums6
  • プチライブラリ/07_文字列操作/文字列分割で最終要素を取得するライブラリ
  • プチライブラリ/08_日付関連/現在の年月日時分秒を取得するライブラリ
  • プチライブラリ/13_ファイル関連/テキストファイルの指定行を読み込むライブラリ
  • プチライブラリ/13_ファイル関連/ファイルパスからフォルダパスとファイル名を取得するライブラリ
  • プチライブラリ/13_ファイル関連/テキストファイルの全文を別のテキストファイルに追記ライブラリ
  • プチライブラリ/18_Excel関連/Excelファイルで指定した行数分アクティブセルを移動するライブラリ
  • プチライブラリ/18_Excel関連/Excelファイルでアクティブセルを次の行へ移動するライブラリ
  • プチライブラリ/18_Excel関連/Excelファイルで行の値を設定するライブラリ
  • プチライブラリ/18_Excel関連/Excelのショートカットキーで操作を行うライブラリ
    (プチライブラリはこちらからダウンロード可能です。)

動作確認環境

本サンプルシナリオは以下の環境で動作確認しています。

  • Windows 10
  • WinActor 6.3.0、7.1.0
  • Microsoft Excel 2016

本サンプルシナリオの使い方

本サンプルシナリオの実施方法は以下の通りです。

Step1.動作環境の確認

WinActorのライブラリを使用して、複数のCSV・Excelファイルを1つのCSVファイルにまとめるサンプルシナリオです。
手元のPCで動作が確認できるように、上記のアプリがインストールされているか、確認してください。

Step2.同梱ファイルの確認

事前に対象ファイルの絶対パス、または相対パスが同梱されている「対象ファイル一覧.txt」に記載されているか確認してください。
操作対象のファイルを相対パスで指定する場合、開いているシナリオのフォルダが起点となります。
また、「対象ファイル一覧.txt」はサンプルシナリオと同じフォルダに格納する必要があるため、同じフォルダに格納されているか確認してください。

Step3.サンプルシナリオの読み込み

ダウンロードしたサンプルシナリオのZIPファイルを展開し、展開したフォルダに含まれている本サンプルシナリオをWinActorで読み込みます。

Step4.動作に必要な変数の設定・確認

本サンプルシナリオを実行するために必要な値を、変数一覧で設定します。
事前に設定が必要な変数は下記に記載しております。

    • 対象ファイル一覧
      • 対象ファイル名が記載された、対象ファイル一覧のファイル名を指定してください。
        例) 対象ファイル一覧.txt

    • CSVファイル名
      • 対象ファイルをまとめた、出力用のCSVファイル名を指定してください。
        初期値の「_yyyymmddhhmmss.csv」は変更しないでください。
        ※「_yyyymmddhhmmss.csv」を変更すると、CSVファイル名に実行日時が設定されなくなり、
         二回目以降の実行時にCSVファイルが上書きされる可能性がございます。
        例) 社員情報_yyyymmddhhmmss.csv

10927_input1.png変数一覧画面1


本サンプルシナリオを正常に実行するために必要な値が、変更されていないことを確認します。
事前に確認が必要な変数は下記に記載しております。

  • 一時ファイル名
    • 初期値を削除しないでください。
      例) 一時ファイル名.csv

    • セル位置
      • 初期値を削除しないでください。
        例) G1

  • 行番号
    • 初期値を削除しないでください。
      例) 1

10927_input2.png
変数一覧画面2

Step5.サンプルシナリオの実行

WinActorで本サンプルシナリオを実行します。
CSV・ExcelファイルをまとめたCSVファイルが完成すると、本サンプルシナリオは終了します。

Step6.サンプルシナリオの終了後の確認

本シナリオと同階層に変数一覧で設定したCSVファイル名:「社員情報_yyyymmddhhmmss.csv」が存在することを確認します。
※「yyyymmddhhmmss」にはシナリオの実行中に取得した日時が記載されています。

トラブルシューティング

本サンプルシナリオでは、変数指定が不十分であった場合、エラーメッセージが出力されます。
詳細については、エラーメッセージ一覧を参照してください。

サンプルシナリオ解説

本サンプルシナリオで使用している実装テクニックについて説明します。

1.ローカル変数について

本サンプルシナリオでは、サブルーチンのローカル変数を使用しています。
WinActor操作マニュアル内の「サブルーチン呼び出し」に記載されている方法でローカル変数を設定しています。

ローカル変数はサブルーチン開始時に値が保存され、サブルーチン終了時に書き戻されます。変数をローカル変数として設定しておくことで、意図せずサブルーチン中で変数値が上書きされてしまうことを防ぐことができます。

2.サブルーチンのローカル変数設定

本サンプルシナリオでは、対象ファイル又は一時ファイルの全文をCSVファイルに追記する際に、サブルーチンのローカル変数設定を使用しています。

サブルーチン:①CSV・②Excelの「テキストファイルに追記」のローカル変数設定について

①.対象ファイルがCSVの時は、対象ファイルをCSVファイルに追記するため、ローカル変数に「対象ファイル名」を指定します。

10927_input3.png

①テキストファイルに追記(CSV)

10927_input4.png

①テキストファイルに追記(CSV)プロパティ


②.対象ファイルがExcelの時は、CSV変換した一時ファイルをCSVファイルに追記するため、ローカル変数に「一時ファイル名」を指定します。

10927_input5.png

②テキストファイルに追記



10927_input6.png

②テキストファイルに追記(Excel)プロパティ



ローカル変数を使用したサブルーチン:「テキストファイルに追記」のプロパティは、下記の画像の通りです。

10927_input7.png

テキストファイルに追記サブルーチングループのプロパティ

3.作成する社員情報ファイルの見出しを設定

本サンプルシナリオでは、「Excel操作(行の書き込み)」を使用して、社員情報ファイルの見出しを設定しています。
見出しを設定する行番号は、変数一覧内の書き込む行番号に設定して行います。
項目名の設定は、「Excel操作(行の書き込み)」内のライブラリ変数の「A列」、「B列」、「C列」、「D列」、「E列」、「F列」、「G列」に指定して行います。

10927_input8.png

Excel操作(行の書き込み)の設定


設定する項目名の数を変更する場合は、以下の手順で変更してください。

1.「Excel操作(行の書き込み)」のスクリプトタブを選択してください。
2.「value1 = !A列!」の記述が出現する位置までスクロールしてください。
3-1.項目数を増やす場合は、以下に添付されている画像の赤枠内の記述をコピーしてアルファベットと番号を振り直してください。

10927_input9.png

Excel操作(行の書き込み)で項目の変更



例)H列分を追加後

10927_input10.png

Excel操作(行の書き込み)で項目を追加後



3-2.項目数を減らす場合は、以下に添付されている画像の赤枠内の記述から該当する列を削除してください。

10927_input11.png

Excel操作(行の書き込み)で項目の削除


例)G列分を削除後

10927_input12.png

Excel操作(行の書き込み)で項目の削除後

変更履歴

版数 日付 修正内容
版数
1.0版
日付
2021/1/15
修正内容
初版
版数
1.1版
日付
2024/1/16
修正内容
・注意事項を削除
・ファイル名を「SS2101_10927_CombineExcelAndCSV_1.0.1.zip」に変更

本コンテンツをダウンロードする前にこちらの利用条件を必ずご確認いただき、内容に同意をしたうえでダウンロードしてください。 また、"コンテンツの利用条件"は下のボタンからダウンロードし、お手元で保管してください。

"Excel関連"に関連するその他のサンプルシナリオ

サンプルシナリオ一覧へ戻る
当サイトでは、お客さまに最適なユーザー体験をご提供するためにCookieを使用しています。当サイトをご利用いただくことにより、お客さまがCookieの使用に同意されたものとみなします。詳細は、「プライバシーポリシー」をご確認ください。