オートメーション道場

RPAツール「Automation 360」(旧Automation Anywhere A2019) の使い方についてまとめていきます。

Excelの各行に対して繰り返す

Excelの各行に対して繰り返す

Automation Anywhere A2019 で Excel ワークブック内のデータの入った各行に対して順番に処理を行うには、「ループ」アクションの中でExcel関係の条件指定を行います。

目次

 

例題として、以下の表を持つExcelワークブックを開いてB列の値をすべて読み込み表示することを考えます。

  A B
1 A1 B1
2 A2 B2
3 A3 B3
4 A4 B4

 

「ループ」アクションでExcelの高度な操作を使う方法

Excel/Office のインストールが必要です。

 

「ループ : ループ」(Loop : Loop) アクションの使い方 (反復子=Excelの高度な操作) 

break までループで操作を繰り返します

 

入力:

 フィールド名  型  説明

Loop Type

選択肢  「反復子」を選択
反復子
(Iterator)
ドロップダウン Excelの高度な操作 : For each row in worksheet」を選択
Session name 文字列 セッション名 (デフォルトは "Default")
Loop through ドロップダウン 「All rows (デフォルト)」「Specific rows」「Cell range」から選択

Read option
(A2019.16以降)

選択肢  「Read visible text in cell (デフォルト)」「Read cell value」から選択

 

出力:

 フィールド名  型  説明
Assign the current value to this variable レコード 出力を格納する変数を指定 

 

解法:

  1. レコード型変数$row$をあらかじめ作成しておきます。
  2. 「Excelの高度な操作 : 開く」アクションを配置して対象のファイルを開きます。
  3. 「ループ : ループ」アクションを配置します。
  4.  アクションの詳細パネルで以下を指定します。
    • 「反復子」に「Excelの高度な操作 : For each row in worksheet」を指定します。
    • 「Assign the current value to this variable」に「row - レコード」を指定します。
  5. ループの中に「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $row[1]$ を指定します。
  6. 保存して実行します。

結果:

「B1」「B2」「B3」「B4」と4回メッセージボックスが表示されます。

 

「ループ」アクションでExcelの基本操作を使う方法

Excel/Office のインストールは不要です。

 

「ループ : ループ」(Loop : Loop) アクションの使い方 (反復子=Excelの基本操作) 

break までループで操作を繰り返します

 

入力:

 フィールド名  型  説明

Loop Type

選択肢  「反復子」を選択
反復子
(Iterator)
ドロップダウン Excelの基本操作 : For each row in worksheet」を選択
Session name 文字列 セッション名 (デフォルトは "Default")
Loop through ドロップダウン 「All rows (デフォルト)」「Specific rows」「Cell range」から選択

 

出力:

 フィールド名  型  説明
Assign the current value to this variable レコード 出力を格納する変数を指定 

 

解法:

  1. レコード型変数$row$をあらかじめ作成しておきます。
  2. 「Excelの基本操作 : 開く」アクションを配置して対象のファイルを開きます。
  3. 「ループ : ループ」アクションを配置します。
  4.  アクションの詳細パネルで以下を指定します。
    • 「反復子」に「Excelの基本操作 : Dor each row in worksheet」を指定します。
    • 「Assign the current value to this variable」に「row - レコード」を指定します。
  5. ループの中に「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $row[1]$ を指定します。
  6. 保存して実行します。

結果:

「B1」「B2」「B3」「B4」と4回メッセージボックスが表示されます。

 

「ループ」アクションでデータベースを使う方法 

Access 2010再頒布化のパッケージ (32 bit) のインストールが必要。64 bit OSでも32 bitをインストールする。Excel/Officeのインストールは不要です。XLSXファイルでなくXLSファイルの場合はJET DB 4.0エンジンがProviderとなる。

 

「ループ : ループ」(Loop : Loop) アクションの使い方 (反復子=データベース) 

break までループで操作を繰り返します

 

入力:

 フィールド名  型  説明

Loop Type

選択肢  「反復子」を選択
反復子
(Iterator)
ドロップダウン 「データベース : SQLクエリ Datasetの各行に対して」を選択
セッション名 (Session name) 文字列 セッション名 (デフォルトは "Default")

 

出力:

 フィールド名  型  説明
この変数に現在の行を代入 (Assign the current row to this variable) レコード 出力を格納する変数を指定 

 

解法:

  1. レコード型変数$row$をあらかじめ作成しておきます。
  2. 「データベース : 接続」アクションを配置します。アクションの詳細パネルで以下を指定します。
    • 「接続モード」に「デフォルト」を指定します。
    • 「Connection string」で「Enter the text」を選択して「Provider=Microsoft.ACE.OLEDB.12.0;Data Source="(Excelファイルのフルパス)";Extended Properties="Excel 12.0 Xml;HDR=NO"」を指定します。
  3. 「データベース : 読み取り」アクションを配置します。アクションの詳細パネルで以下を指定します。
  4. 「ループ : ループ」アクションを配置します。 アクションの詳細パネルで以下を指定します。
    • 「反復子」に「データベース : SQL クエリ Dataset の各行に対して」を指定します。
    • 「この変数に現在の行を代入」に「row - レコード」を指定します。
  5. ループの中に「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $row[1]$ を指定します。
  6. 保存して実行します。

結果:

「B1」「B2」「B3」「B4」と4回メッセージボックスが表示されます。

 

 

 

 

オートメーション道場