四則計算の結果を変数に代入する
四則計算はアクションの詳細パネルの中の数字フィールドや文字列フィールドで実施できます。計算結果を変数に代入するには「数字 : 代入」アクションや「文字列: 代入」アクションを使います。
目次
四則演算でサポートされている表現/演算の内容
四則計算について復習しておくと、使えるのは以下の要素や演算子です。
要素/演算子 | 説明 |
---|---|
数字 | 定数を指定できます。-9,223,372,036,854,775,808 から 9,223,372,036,854,775,807の範囲で15桁の精度までサポートします。 |
変数 | 数字型変数を数字の代わりに使えます。 |
+ | 加算演算子 |
- | 減算演算子 |
* | 乗算演算子 |
/ | 減算演算子 |
( ) | グループ化演算子。数式処理の優先度を決めます。 |
「数字 : 代入」アクションを使う方法
数字型フィールドで数式を記載できます。
例題として以下の式の計算結果を数字型変数に代入します。$n$の初期値は10に設定します。
1+$n$*($n$-1)/2
「数字: 代入」(Number : Assign) アクションの使い方 ユーザー指定の数字を Number 変数に代入ます。
入力:
出力:
|
解法:
- 変数パネルで数字型の変数$n$を新規作成し「10」をデフォルト値に設定します。
- 「数字 : 代入」アクションを配置します。
- アクションの詳細パネルで以下を指定します。
- 「1+$n$*($n$-1)/2」を指定します。
- 「ターゲットの数字変数を選択します」に「$n$ - 数字」を選択します。
- 「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $n.Number:toString$ を指定します。
- 保存して実行します。
結果:
「46」となります。
$n.Number:toString$の書式は「型キャスト」を使っています。詳しくは『四則演算や変数の型変換を簡単に行う』を参照してください。
「文字列 : 代入」アクションを使う方法
実は、文字列型フィールドでも数式を記載できます。v11からのボット移行を行うとこちらの記載になります。
例題として以下の式の計算結果を文字列型変数に代入します。$s$の初期値は10に設定します。
1+$s$*($s$-1)/2
「文字列: 代入」(String : Assign) アクションの使い方 指定の文字列を代入または連結します。
入力:
出力:
|
解法:
- 変数パネルで文字列型の変数$s$を新規作成し「10」をデフォルト値に設定します。
- 「文字列 : 代入」アクションを配置します。
- アクションの詳細パネルで以下を指定します。
- 「1+$s$*($s$-1)/2」を指定します。
- 「ターゲットの文字列変数を選択」に「$s$ - 文字列」を選択します。
- 「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $s.LegacyAutomation:parseVariableOperation$ を指定します。
- 保存して実行します。
結果:
「46」となります。
文字列型変数に単純に数式を入れるだけだと、数式の文字列が入るだけです。ここでは$s.LegacyAutomation:parseVariableOperation$の書式を使って数式文字列をパースして解釈するところがポイントです。しくみとしては「型キャスト」を使っています。詳しくは『四則演算や変数の型変換を簡単に行う』を参照してください。尚、LegacyAutomation:parseVariableOperationの利用はA2019で新規に作るボットでは推奨されていません。
Automation Anywhere v11.xの四則演算では、A2019でサポートされていない演算子として剰余演算子 (%) をサポートしていました。文字列型変数 + 型キャスト (LegacyAutomation:parseVariableOperation) では、剰余演算子も追加で使えます。