Automation 360 パッケージリファレンス ~変数編~

Automation Anywhere 技術情報

はじめに

Automation 360のパッケージリファレンスでは、Automation 360でよく使うパッケージや、使い方が少し特殊なパッケージなどをご紹介します。 今回ご紹介するのは、「変数」です。

1.変数の概要

変数は、Automation 360でタスクBotを作成する際に必ず必要になってくる重要な機能です。特定のデータ(数値や文字列などの値)を記憶しておく格納場所として機能し、数値や文字などの値を代入したり、必要な時に変数の値を参照したりして利用します。

主要な特徴や利点:

  • データの一時保存と再利用が可能
  • Bot開発時の柔軟性向上
  • 変更に対する保守性の向上
  • 様々なデータ型に対応

2.変数の種類とユーザー定義変数の一覧

変数の種類

  • 定義済み変数(システム変数):Automation 360にて予め用意された変数です。開発者による削除/変更はできません。
    • クリップボード関連変数
      →クリップボードにあるテキストを返す変数
    • システム関連変数(タスクBot、日付、デバイス)
      →システム日付やマシン名等のデバイスから取得できる情報や、Control Roomから取得できる情報を返す変数
    • 文字列関連変数(改行コード、タブなど)
      →Enterやタブなどを返す変数
  • ユーザ定義変数:タスクBot開発時に開発者が作成した変数です。作成した変数は、そのタスクBotでのみ使用可能です。ユーザー定義で作成できる変数は下記の一覧の通りです。
データ型用途パラメータ戻り値の有無戻り値の内容と例
Any(任意)出力用変数の変数タイプが不明なときに使用・変数名任意の型の値
String(文字列)文字列を扱うときに使用・変数名
・デフォルト値(任意)
文字列データ(例:$変数名$)
Number(数字)数字を数値として扱い、四則演算するときに使用・変数名
・デフォルト値(任意)
数値データ(例:$変数名$)
DateTime(日時)日時を日時データとして扱い、日時の計算/比較をするときに使用・変数名
・デフォルト値(任意)
日時データ(例:$変数名$)
Boolean(真偽)真か偽の値を扱うときに使用・変数名
・デフォルト値(任意)
True/False(例:$変数名$)
File(ファイル)ファイルのコンテンツ(中身)を扱うときに使用・変数名
・デフォルトのファイルパス(任意)
ファイルオブジェクト(例:$変数名$)
Window(ウィンドウ)ブラウザやアプリケーションのウィンドウ画面処理を行うときに使用・変数名
・デフォルトのウィンドウ情報(任意)
ウィンドウオブジェクト(例:$変数名$)
Credential(資格情報)資格情報で登録した値を扱うときに使用・変数名
・デフォルトの資格情報
暗号化された認証情報(例:$変数名$)
List(リスト)順序付けされた複数の値を持ち、1つの変数として扱うときに使用・変数名
・サブタイプ(任意 ※デフォルトは文字列)
・デフォルト値(任意)
リストデータ(例:$変数名[0]$)
Dictionary(ディクショナリ)順序付けされていないキーと値のペアのこと。キーで値を参照するときに使用・変数名
・サブタイプ(任意 ※デフォルトは文字列)
・デフォルトのキー・値のペア(任意)
キー・値ペア(例:$変数名{“キー”}$)
Record(レコード)テーブル変数内の1行を扱うときにループ処理で使用・変数名
・デフォルト値(任意)
レコードデータ(例:$変数名{“ヘッダー名”}$、$変数名[0]$)
Table(テーブル)ExcelやCSV等から表形式のデータを扱うときに使用・変数名
・デフォルト値(任意)
テーブルデータ(例:$変数名[0]{“ヘッダー名”}$、$変数名[0][2]$)
Form(フォーム)事前に作成したフォームを扱うときに使用・変数名
・デフォルトのフォーム
フォームオブジェクト(例:$変数名$)
Session(セッション)外部システム(ExcelやSharepoint、Outlook等)との接続セッションを管理するときに使用・変数名
・セッションタイプ

3.使用例・サンプル

ユースケース1:文字列結合処理

シナリオ: 社員への挨拶メッセージを動的に生成する

実装フロー例:

1. 変数:代入
変数「氏名」に、「佐藤さん」を代入

2. 変数:代入
変数「あいさつ」に、「こんにちは」を代入

3. 変数:代入
変数「メッセージ」に、$あいさつ$ $氏名$ を代入

4. メッセージボックス
$メッセージ$ を表示(結果:「こんにちは佐藤さん」)

ユースケース2:数値計算処理

シナリオ: 税込金額の計算を自動化する

実装フロー例:

1. 変数:代入
変数「税抜価格」に、5000 を代入

2. 変数:代入
変数「消費税」に、500 を代入

3. 変数:代入
変数「税込価格」に、$税抜価格$ + $消費税$ を代入


4. メッセージボックス
「税込価格:$税込価格$円」を表示(結果:5500円)

使用例・サンプルで使用したアクションについて:

  • 変数:代入アクション:変数に値を設定する際は、データ型の整合性を確認する
  • メッセージボックスアクション:変数を表示する際は、$変数名$の形式で記述する
  • 数値計算:Number型変数同士の演算では、結果もNumber型として扱われる

4.Tips/注意点

よくある落とし穴と間違いやすいポイント

変数を使用する上でのポイント:

  • データ型の不一致:Number型の変数に文字列を代入しようとするとエラーが発生します。
    変数作成時に正しいデータ型を設定しておきましょう。
  • 変数名の命名規則:データ型ごとに命名規則を設けましょう。
    命名規則を設けることで、変数を使用する時に変数のデータ型が何かが分かりやすくなり、データ型の不一致を防ぐことができます。
    例えば、文字列型の変数の場合→”st_変数名”にする 等
  • スコープの理解不足:ユーザ定義変数は作成したタスクBot内でのみ有効です。
    他のタスクBotに変数を渡したい場合は、タスクBotの呼び出しを使って、入力値に変数を設定しましょう。

パフォーマンス最適化のコツ

  • 大量のデータを扱う場合は、適切なデータ型(Table、List、Dictionary)を選択すること
  • 不要な変数は適切にクリアして、メモリ使用量を最適化すること
  • 複雑な処理では、中間結果を変数に保存して処理を分割すること

5.まとめ・応用

変数の主要な利点の再確認

  • 柔軟性:様々なデータ型に対応し、複雑な処理にも対応可能
  • 保守性:変数を使用することで、値の変更が容易になり保守性が向上
  • 再利用性:一度設定した値をタスクBot内の複数箇所で再利用可能

変数を使った業務活用アイデア

  • データ処理自動化:ExcelやCSVファイルのデータを変数に格納し、計算処理を自動化
  • レポート生成:複数のデータソースから情報を収集し、変数を使用してレポートを動的生成
  • 条件分岐処理:Boolean変数を使用した複雑な条件分岐ロジックの実装
  • ファイル操作:File変数を使用したファイルの読み込み・書き込み処理の自動化

終わりに

本記事では、Automation 360における変数の特徴や、実際の利用イメージについて解説しました。

記事を読むだけでなく、実際に手を動かしてみることで、より理解が深まります。「RPAに興味はあるけれど、高価なライセンスを購入するのはハードルが高い」と感じている方には、Automation 360 Community Editionがおすすめです。

Community Editionは完全無料で利用できるため、今回ご紹介した変数操作の自動化をすぐに試すことができます。RPAツールの導入を検討されている方や、スキルアップを目指す方には、まずはCommunity Editionから始めてみるのがおすすめです。 Community Editionの公式HP: https://www.automationanywhere.com/products/community-edition

株式会社システムサポートでは、Automation 360の導入から開発支援、保守まで包括的にサポートしております。本ブログでは、Automation 360 Community Editionのインストール方法をご案内しておりますので、是非ご覧ください。⇒https://www.sts-inc.co.jp/automationanywhere/column/technical-methods/automation360-communityedition-start-rpa/

また、Automation 360をご導入いただいたユーザー様向けに、簡単なBot開発を体験いただけるハンズオンプログラムもご用意しています。ハンズオンでは、実際に手を動かしながら、弊社エンジニアのサポートのもとでBot開発の基本を習得いただけます。

ハンズオンのお申込みはこちら→https://www.sts-inc.co.jp/form_sol_automationanywhere.html

最後までお読みいただき、ありがとうございました。

この記事を書いた人
M.N

Automation Anywhere社の認定パートナー企業であるシステムサポートの一員として、RPA・インテリジェントオートメーション領域に関わり始めて3年目。
製造・金融・不動産など幅広い業種のクライアントに対して、業務自動化の提案・PoC支援・導入・保守までを一貫して担当しています。
現場で感じたリアルな気づきや、業務効率化のヒントをわかりやすく発信していきます!

M.Nをフォローする
Automation Anywhere 技術情報