では、いよいよ自動化にトライしてみましょう。最初は、ふだんよく使っているExcelの操作です。AutoMateでは、Excelの立ち上げからセルの移動、関数の活用などExcelに関するさまざまな操作をかんたんな手順で自動化できます。
❶1つのExcelファイルから別のExcelファイルへデータの転記と別名での保存作業を自動化します。
❷2つのExcelファイルを用意する
(1)最初に使用するExcelファイルを用意します。ここでは「顧客リスト」と「契約書」という名前の2つのExcelファイルを使います。
●顧客リスト
●契約書
❸日時形式を設定する
(1)AutoMate 11 タスクアドミニストレーター画面左下の「検索窓」で「変数」と入力すると、左列の[アクション]列に[変数]が表示されます。この[変数]を中央のスペースにドラッグ&ドロップします。
(2)[変数]のプロパティ画面が表示されたら、日付を格納する変数を作成します。[var_savedate]と設定します。
(3)次に、左列の[アクション]で[テキスト]を検索して、中央のスペースにドラッグ&ドロップします。[アクティビティ]の[Format Date/Time]を選択し、[日時形式]の欄に「yyyyMMdd」、[結果を変数に設定する]欄に「var_savedate」と入力します。
❹「顧客リスト」ファイルを選択する
(1)[アクション]欄の[Excel]の下にある[ブックを開く/作成する]を中央のスペースにドラッグ&ドロップすると、Excelのプロパティ画面が開きます。
(2)[ファイル名]右横のフォルダーアイコンをクリックして「顧客リスト」を選択します。
(3)[セッション]名は「ExcelSession1」とします。
(4)[OK]をクリックします。
❺顧客リストからデータセットを作成する
(1)ここでは既に開いているExcel(顧客リスト)を利用します。[アクティビティ]下の[セル]中の[セルの取得]を選択します。
(2)[リソース]は[セッション]を選択します。
(3)[セッション]は「ExcelSession1」を選択します。
(4)[セル]の[取得]では、今回は単一のセルではなく、範囲を指定してデータを抜き出すので、[セル参照(範囲指定)]を選択します。
(5)[データセットの作成と設定]では、「dataset1」とデータセット名を指定します。
(6)[開始セルの参照]では、範囲選択の始まりを指定します。「顧客リスト」ではA1に項目名があるので、ここでは「A2」とします。
(7)[終了セルの参照]は、範囲選択の終わりを指定しますが、ここでは[自動検出]にチェックを入れます。
(8)[OK]をクリックします。
❻繰り返し条件(ループ条件)の設定
(1)今回は、「顧客リスト」のデータセット(dataset1)の要素がなくなるまで処理を繰り返します。こうした場合は、AutoMateの[Loop(ループ)]という機能を使います。
(2)左列の[アクション]から[Loop]を選択し、プロパティ画面を表示させます。
(3)[アクティビティ]の[Dataset]を選択し、さらに[データセット]に❺の(5)で指定した[dataset1]を選択します。
(4)今回は最初の行から最終行まで処理するので、[行からループを開始する]と[行の前または後にループを終了する]のどちらにもチェックを入れません。
(5)[OK]をクリックします。
❼AutoMateで「契約書」ファイルを開く
(1)❹と同じ手順で、[ファイル名]右横のフォルダーアイコンをクリックして「契約書」ファイルを選択します。
(2)[セッション]名は「ExcelSession2」とします。
(3)[OK]をクリックします。
❽顧客リストから会社名を契約書に転記する
(1)[アクティビティ]下の[セル]中の[セルの設定]を選択します。
(2)[リソース]は[セッション]を選択します。
(3)[セッション]は「ExcelSession2」を選択します。
(4)[セル]の[データソース]は、今回は1文字列なので、[単一の値]を指定します。
(5)[新しい値]は、[%dataset1.A%]を指定します。これは「データセット[dataset1]のA列」の意味です。
(6)[セルの設定]は、[参照]を選択します。
(7)[セル参照]は、契約書において会社名を入力する場所はC4なので、[C4]を指定します。
(8)[OK]をクリックします。
❾❽で作成したアクションを3つ複製する
(1)❸~❽で作成したアクションが並んでいます。
(2)5行目「データセット”dataset1”をループする」の次頭下げになっている6・7行目は、繰り返し行われるアクションを示しています。
(3)❽で作成したアクションを、コピー&ペーストで3つ複製します。
❿複製したアクションを書き換える
(1)定義されたアクションはダブルクリックするか、右クリックから[編集]を選択すると、編集が可能になります。
(2)[新しい値]欄の「%dataset1.A%」のAをBに変更します。
(3)[セル参照]欄をC6とします。これで、担当者名が契約書のセルC6 に転記されます。
(4)[新しい値]欄の「%dataset1.A%」のAをCに変更します。
(5)[セル参照]欄をC8とします。これで、住所が契約書のセルC8に転記されます。
(6)[新しい値]欄の「%dataset1.A%」のAをDに変更します。
(7)[セル参照]欄をC10とします。これで、電話番号が契約書のセルC10に転記されます。
(8)タスク欄で、書き換えた後の状態が確認できます。
⓫名前を付けて契約書を保存する
(1)Excelの[アクティビティ]から[ブックを閉じる]をクリックします。
(2)[セッション]欄で[ExcelSession2]を指定します。
(3)[完了時に]欄で[名前を付けて保存]を選択します。
(4)フォルダーマークをクリックすると、この画面が開くのでファイル名を入力します。ここでは「A」とし、[保存]をクリックします。
⓬ファイル名に日付と会社名を入れる
(1)前画面で保存をクリックすると、[ファイル]欄にファイル名が表示されます。
(2)ファイル名の「A」と「.」の間にカーソルをもっていき、「A」をBack spaceで削除します。次に%マークをクリックします。
(3)「エクスプレッションビルダー」が表示されるので、[変数]で定義した[var_savedate]をダブルクリックし、上の欄に[var_savedate]が表示されるのを確認して、[Insert]をクリックします。
(4)ファイル名が「%var_savedate%」となっていることが確認できます。
(5)同様の方法で、ファイル名を「%var_savedate%_%dataset1.A%_契約書」と指定します。
⓭[顧客リスト]を閉じる
(1)Excelの[アクティビティ]から[ブックを閉じる]をクリックします。
(2)[セッション]欄で[ExcelSession1]を選択し、[完了時に]欄では[保存]または[変更を保存しない]を選択します。
⓮別のExcelへのデータの転記を実行する
(1)AutoMate タスクビルダー画面上の[実行]をクリックすると、処理が開始されます(タスク開始前に、開いている顧客リスト、契約書のExcelファイルをすべて閉じるよう注意してください)。
(2)下画面は、処理された結果です。1つのデータごとにファイルが作成されています。
(3)前画面で1つのファイルをクリックすると、処理結果の内容が確認できます。
(4)タスクが失敗した場合は、失敗したステップが赤く反転し、画面下部「出力」タブにエラー理由が表示されます。この画面は、「指定したパスが誤っている」場合のエラーなので、エラーメッセージに従って修正します。
・・・・・・・・
サンプルタスクのダウンロード
Excel操作やWebブラウザ操作のサンプルタスクとサンプルファイルは、以下のURLからダウンロードできます。
https://www.sct.co.jp/download/automate/Document/other/handson_sample_Win.zip
解凍後、各テキストファイル内のコードをコピーし、タスクビルダーに貼り付けると、タスクが生成されます。さらに「handson_excel_samplefile.zip」を解凍すると、ここで使用する「顧客リスト」「契約書」のサンプルファイルを取得できます。
・・・・・・・・
いろいろなExcelファイルを利用
ここでは、例として「顧客リスト」と「契約書」を使いますが、社員1人ひとりの「交通費精算表」と「全社員の経費まとめ」などでも、❷以下の手順で自動化を行えます。
・・・・・・・・
変数とは
変数とは、数字や文字列を一時的に入れる箱のようなものです。例えば繰り返し処理では、何回目の実行かをカウントしたり、タスクの作成途中で変更するURLやユーザー/パスワードなどを変数化しておけば、タスクの修正が簡単です。
・・・・・・・・
データセットとは
AutoMateでいうデータセットとは、名前付きのレコードグループであり、行・列の表形式で取得対象のデータを格納できる変数を意味します。
・・・・・・・・
AutoMateで変数を指定する方法
AutoMateで作成した変数を指定する場合は、「%変数名%」と記述するか、エクスプレッションビルダーを起動して変数を選択する方法があります(エクスプレッションビルダーについては⓬を参照)。
・・・・・・・・
日時形式はスラッシュを除く
日時形式は、デフォルトでは「yyyy/MM/dd hh:mm:dd」と設定されています。しかし今回はファイル名として使用するので、「yyyy/MM/dd」のようにスラッシュが入ると保存エラーになります。必ずスラッシュを除くように注意してください。
・・・・・・・・
セッション名は一意に
[セッション]を割り当てることで、複数のExcelファイルを開く時に区別して操作できます。ただしセッション名は、タスク内で一意である(同じセッション名を使わない)必要があります。
・・・・・・・・
YouTubeチャンネルを参照
SanwaComtecチャンネルより『ハンズオン1 Excel処理の自動化』をご覧ください。
https://www.youtube.com/user/SanwaComtec
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
かんたん! AutoMate入門 CONTENTS
01 RPAって何?
02 AutoMateとは
03 インストールと設定
04 基本画面と使い方
05 Excel操作の自動化にトライ!
06 Webブラウザを使う操作の自動化にトライ!
07 Excel・Webブラウザ以外の操作の自動化
08 マウス・キーボードによる操作
09 アクションのエラー処理
10 繰り返し処理を多彩に実行するループ機能
11 多様な条件で処理を実行するifアクティビティ
12 異なる業務を連携できる「自動起動トリガー」
13 連携機能を使い、外部アプリケーションの操作を自動化
14 多彩な開発・集中管理機能を備えるサーバー版、AutoMate PlusとAutoMate Ultimate