はじめに
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
最後までお読みいただき、ありがとうございました。


