StudioXのアクティビティ

UiPath StudioXの共通アクティビティ【Root(その他)】

2023/02/15

StudioXの共通アクティビティは、「共通」というグループ名が示すとおり、全てのアクティビティで汎用的に使えるものです。

特に[変数の値を設定]アクションは、ほとんどのプロジェクトで利用することになるでしょう。

他にも、ワークフローを構築する上で欠かせないアクティビティが揃っているので、ひとつひとつ使い方を理解しましょう。

この記事では、以下のアクティビティについて解説します。

記事編集時のStudioX - ver2022.12.0

入力のアクティビティ

  • HTMLコンテンツを作成
  • Write Line
  • グループ
  • メッセージボックス
  • 入力ダイアログ
  • 型を変更
  • 変数の値を設定

HTMLコンテンツを作成

メールで使用するため、または、Webサイトとして共有するためのリッチドキュメントを作成します。(ガイドはこちら)

WYSIWYG HTMLエディターを利用して、色やサイズ、表などによる表現が可能なリッチドキュメントを生成し、メールの本文などで利用できます。

エディターを開く

専用のエディターで、リッチテキストを編集します。

[エディターを開く]ボタンをクリックすると、エディターが表示されますが、使い方はExcelを使っている人であればアイコン見たら大体お分かりいただけるのではないでしょうか。

表現できる書式を適当に使ってみました。

もし、より複雑な表現をしたい場合、もとはHTMLソースなので、表示モードを切り替えればカスタム可能です。

データの値を追加

エディターでは、[+]でノートブック(Excel)の値などを直接呼び出すことができないものの、[データの値を追加]を経由することで参照が可能です。

流れは、以下の2ステップ。

  1. マッピングで呼び出したい値を登録する。
  2. エディターで登録した名前を追加する。

例題で、Excelの日付をエディターに登録する手順を説明しましょう。

[データ値をマッピング]をクリックします。 [値を入力]-[単一の値]をクリックします。 [値]の[+]-[ノートブック]-[日付[シート]]-[テキスト_日付[セル]]をクリックします。 名前に"TextDate"と入力し、[OK]をクリックします。
※日本語も使えないことはありませんが、お勧めしません。
編集画面に戻ったら、"日付は"と入力したあと、
[データの値を追加]-[TextData]をクリックします。

メールの本文に反映させると、以下のようになります。

HTMLコンテンツ

エディターで作成したHTMLソースを他のアクティビティで使うため、記憶する場所を指定します。

[ノートブック(Excel)]や[クリップボードにコピー]、[後で使用するために保存]などから指定できます。

メールでリッチテキストを利用する

メールでリッチテキストを使うためには、2つのアクティビティが必要です。

まずは、[HTMLコンテンツ]を"HTML"という変数名にしておきましょう。

続いて、メールのリソースを追加します。

ここでは[Gmailを使用]リソースを使いました。

そして、[メールを送信]アクションを追加し、オプションの[テキストからのHTML本文]に、"HTML"を指定します。

これで、リッチテキストがメールに反映されきました。

[メールを送信]アクションにもエディターが付属していますので、直接HTMLを入力したい場合は、こちらで編集するといいでしょう。
おぐし

Write Line

出力ウィンドウに指定した文字列を書き込みます。(ガイドはこちら)

値を[出力]パネルに表示させて、変数に記憶されている値を確認したり、分岐のどこを通過しているかを確認する際などに利用します。

シンプルなテキストであれば、テキストボックスを直接クリックして編集するといいでしょう。

その他、テキストビルダーを使用する場合は、【「」】をクリックすると、テキストビルダーが開かれます。

テキストビルダーを開くと、出力するテキストを編集できます。

また、メニュー[変数を使用]から変数を呼び出して、テキストに組み込むことも可能です。

Excelの値やクリップボードの値などは、[+]メニューから選択してください。

[Text]の編集は、[テキストビルダー]と[式エディター]の2つのモードがあるので注意。

テキストビルダー 式エディター
クリップボードやExcelの値などを組み合わせた、複合的なテキストは作成できません。(不可能ではありませんが。)
おぐし

グループ

含まれる子アクティビティを逐次実行します。(ガイドはこちら)

複数のアクティビティをグループ化します。

複数のアクティビティを[グループ]の中にまとめることで、色々なメリットが生まれますね。

例えば、グループの表示名を変更すれば、その処理群が何を意味しているのか把握しやすくなります。

また、[グループ]で折りたためるので、特に処理が長くなる場合に作業がしやすくなるでしょう。

あるいは、複数のアクティビティをまとめて無効したい場合は、[グループ]単位で無効化できます。

その他、配置場所を移動したい場合にグループ単位でドラッグできるのもいいですね。

[グループ]にまとめるメリット

  • 表示名を変更することで処理群の意味を把握しやすくなる
  • [グループ]で折りたためる
  • [グループ]単位で無効化/有効化できる
  • [グループ]まとめて配置の移動ができる
[グループ]は、処理全体を整理する上で欠かせませんね。
おぐし

メッセージボックス

オプションボタンを含む所定のテキストを有するメッセージボックスを表示します。(ガイドはこちら)

メッセージボックスを表示します。

オプションを変更することで、案内用のメッセージだけでなく、Yes/Noをユーザーに判断させる問い合わせ用メッセージとしても利用できます。

ここでは、以下の項目について解説します。

  • テキスト
  • 最前面
  • キャプション
  • [ボタン]と[選択されたボタン]
  • 次の経過後に自動で閉じる

テキスト

メッセージ部分に表示するテキストを指定します。

[+]メニューにあるノートブックやクリップボード、テキスト、数などから指定できます。

中でも特に[テキスト]は、汎用性があるので使う機会も多いでしょう。

メッセージにノートブックからの値を挟み込んだり、改行の挿入も可能ですね。

最前面

チェックOFFにすると、他の画面をアクティブにしたときに、メッセージが裏に隠れるようになります

初期値はチェックONです。

一般的に、チェックONの状態を「モーダル」、チェックOFFの状態を「モードレス」と呼びます。

キャプション

メッセージボックスのタイトル部分に表示させるテキストです。

[ボタン]と[選択されたボタン]

表示されるボタンの種類を変更でき、種類は4つあります。

また、クリックしたボタンの結果を、[選択されたボタン]に指定した名前へ記憶することで、後続の処理の分岐で利用できます。

ボタンの種類 表示画像 [選択されたボタン]の値
OK(初期値) Ok
OkCancel Ok/Cancel
YesNoCancel Yes/No/Cancel
YesNo Yes/No

[選択されたボタン]で記憶した値は、後続で、[条件分岐]アクションや[スイッチ]アクションによって処理を分岐する際に活用します。

例えば、[ボタン]を"YesNo"、[選択されたボタン]を"Result"にして、以下のようなフローになりますね。

実行した後と、"はい"と"いいえ"をクリックした後の結果はこのようになります。

次の経過後に自動で閉じる

メッセージが表示されてから、一定時間後に自動でメッセージボックスを閉じたい場合、設定してください。

未設定の場合は、ボタンをクリックするまで待機します。

入力ダイアログ

ラベルメッセージと入力フィールドでユーザーを促すダイアログボックスを表示します。(ガイドはこちら)

自動化処理実行中に、ユーザーへ値の入力を促したい場合に使います。

入力ダイアログには2種類あり、ひとつは自分で値を入力させる方法、もうひとつは指定されたリストから選択する方法ですね。

自分で入力 指定されたリストから選択

ここでは、以下の項目について解説します。

  • [ダイアログのタイトル]と[入力ラベル]
  • [入力の種類]と[入力オプション]
  • 入力した値
  • オプション
  • パスワード入力

[ダイアログのタイトル]と[入力ラベル]

ダイアログボックスのタイトルとラベルを指定します。

言うまでもありませんが、何を入力するのかが分かるような文章にするといいでしょう。

直接テキストを入力する他、Excelのセルや変数の値をタイトル/ラベルに指定できます。

[入力の種類]と[入力オプション]

[入力の種類]=テキストボックス

[入力の種類]で"テキストボックス"を指定すると、ユーザーによる入力となります。

[入力の種類]=複数選択

"複数選択"を指定すると、リスト一覧から選択することになりますが、項目の数によりダイアログの形が変化します。

リスト一覧は、[入力オプション]で、";"(セミコロン)区切りで指定します。

項目が1つの場合

テキストボックスに、初期値として[入力オプション]に指定したテキストが入力された状態で表示されます。

項目が2~3つの場合

項目がラジオボタン形式で表示されます。

項目が4つ以上の場合

ドロップダウン形式で表示されます。

入力した値

入力した(選択した)テキストの、記憶する場所を指定します。

[ノートブック(Excel)]や[クリップボードにコピー]、[変数を作成]、[変数を使用]などから指定できます。

オプション

[オプション]は、VB.NETで選択項目を生成する際に利用します。

例えば以下の構文を入力すると、プロジェクトフォルダ内のExcelファイルを選択項目として表示することができます。

※構文は、プロパティの[オプション]から入力しています。

また、かなりニッチなニーズかもしれませんが、項目の文字に";"(セミコロン)を表示させたい場合、[オプション]を使うと表示可能ですね。

パスワード入力

チェックONにすると、テキストボックスへ入力した文字列が伏せ字(●)になります。

型を変更

後変数のデータ型を変更します。(ガイドはこちら)

例えば、123をテキスト型として取り込んだ場合、足し算引き算のような計算に利用できません。

しかし、数値型(Int32型)に変換すれば可能になります。

このように、処理の目的に応じた型へ変換したい場合に利用します。

ここでは、以下の項目について解説します。

  • 変更する変数
  • 変更後の型
  • 保存する新しい変数
  • 書式設定

変更する変数

型変換したい変数を指定します。

[変更する変数]-[+]-[変数を使用]から、変更したい変数を指定してください。

変数以外のメニューも表示されますが、変数以外を指定してみたところで、特に面白い応用は見つからないでしょう。

様々な型を変更出来ますが、大半はテキスト型の値を他の型に変更するケースになります。

変更後の型

変更後の型を指定します。

リストにある中では、"Int32(数値型)"を選択することが多いでしょう。

もちろん、そのほかの型「Object」や「Array of[T]」も使用可能です。

また、その他の型を指定する場合は、"Browse for Types..."をクリックすると、たくさんの型の中から選択可能になります。

これらの型の中から、特によく使用する型は、以下2つです。

型の名前 説明
System.Double 小数点以下あり数値
System.DateTime 日付

保存する新しい変数

型変更後の値を格納する、変数名を指定します。

書式設定

[変数後の型]がInt32(数値)の場合に、その数値がどのような書式なのかを指定します。

[書式の種類]の選択によって、表示項目が変化します。

Number(数値) DateTime(日時)

書式の種類:Number

小数桁数:小数点以下の桁数を指定します。

小数点区切り:小数点の区切り記号を指定します。日本表記の場合、ピリオドです。

グループ区切り:桁区切りを指定します。日本表記の場合、カンマです。

書式の種類:Datetime

パターン:日時の書式を指定します。

例えば、[変更する変数]に入力されている値が"2023-02-01"(2023年2月1日)の場合、パターンは"yyyy-MM-dd"を選択します。

"yyyy"が年(西暦)であるように、パターンにはルールがあります。

詳細は、以下のサイトを参照ください。

カスタム日時形式文字列

 なお、パターンは、リストの中から指定するほか、リストにないパターンを直接手入力することも可能です。

[型を変更]利用の流れ

[型の変更]の使い方を理解するために、順を追って説明しましょう。

テキスト型の"1,234.56"を、数値型へ変更する手順を例に、解説します。

例:テキスト型の"1,234.56"を数値型に変更

(前提として)数字表記は世界共通じゃない

日本やアメリカは「1,234.5」のように、桁区切り(グループ区切り)がカンマ、小数点がピリオドで表記しますね。

しかし、例えばドイツであれば「1.234,5」と、桁区切りがピリオド、小数点がカンマとなります。

他にも下表のように、国によって数字表記は様々なのです。

桁区切り/グループ区切り 小数点 表記例
日本・アメリカ コンマ ピリオド 1,234.5
イギリス・ドイツ ピリオド コンマ 1.234,5
フランス・ロシア スペース コンマ 1 234,5
スイス アポストロフィ ピリオド 1'234.5

そこで、数値に変換する元の値がどの地域の数字表記なのかを、書式設定で指定することで、正しく変換できるようになるわけです。

小数点ありなしで[変更後の型]の指定を切り替える

まず、例題の値が整数なのか、小数点以下ありの数値なのかで、[変更後の型]を正しく指定しなければなりません。

"1,234.56"は小数点を含みますね。ですので、このケースではDouble型(小数点あり数値)を指定してください。

しかし、リストには"Double"が存在しませんね。

この場合は、"Browse for Types..."をクリックし、その中から"System.Double"を検索し、指定してください。

[変更後の型]から"Browse for Types..."を選択します。 [型の名前]に"double"を入力します。
"System.Double"の項目を見つけたら選択し、
[OK]をクリックします。
[変更後の型]に"System.Double"が選択されました。
もし、値が整数の場合は、予めリストに表示されている"Int32"(数値型)を選択することになります。
おぐし

[書式設定]の数字表記に設定を合わせる

"1,234.56"の、小数点以下の桁数、小数点記号、桁区切りを見ると、以下のようになっていますね。

  • 小数点以下の桁数:2
  • 小数点記号:ピリオド
  • 桁区切り:コンマ

これを、[書式設定]で指定すると以下のとおりになります。

なお、小数桁数は、[変更する変数]に入力されている数値の小数桁数より大きければ問題ありません。

  • [変更する変数]の値="1,234.56"、[小数桁数]=4 →OK
  • [変更する変数]の値="1,234.56"、[小数桁数]=3 →OK
  • [変更する変数]の値="1,234.56"、[小数桁数]=2 →OK
  • [変更する変数]の値="1,234.56"、[小数桁数]=1 →NG
  • [変更する変数]の値="1,234.56"、[小数桁数]=0 →NG

”1,234.56"は小数点以下が2桁なので、2以上の値であればOKです。

Double型の小数桁数の上限は15です。それ以上の値を指定しないようにしてください。

変更後の値を記憶する変数名を指定

最後に、[保存する新しい変数]の[+]-[変数を作成]を指定して完成です。

変数の値を設定

後のアクティビティで使用する値を保存します(割り当てます)。保存した値は別のアクティビティの入力として使用できます。(ガイドはこちら)

文字列や数値、場合によってはデータテーブルなどの値に名前をつけて記憶することにより、様々な場所で呼び出せるようになります。

Studioでは「代入」と言いますが、人によってはそう呼んだ方が理解しやすいかもしれません。

このアクティビティには[保存先]と[保存する値]の、2つの項目があります。

保存先

記憶する変数名を指定します。

または、作成済みの変数に記憶している値を書き換えます。

[保存先]-[+]をクリックすると、[変数を作成]と[変数を使用]という項目名が表示されます。

その項目名のとおり、[変数を作成]を選択すると、変数を作成します。

[変数を使用]は、既に作成済みの変数を選択します。

それぞれ解説しましょう。

変数を新規作成する

[+]-[変数を作成]を選択した場合、[変数を設定]画面が表示されます。

変数名(無名のテキストボックス)

変数名には、文字、数字、_(アンダースコア)を組み合わせたものが使用可能です。

数字で始まる名前は使用できません。

変数に代入する、値の型を指定します。

型は何種類も存在しますが、その中で代表的なものに絞って、リストに表示されています。

型の違いにより、変数の持つ性質が変わります。種類による違いは以下のとおり。

説明
テキスト 文字列を格納する。
数値 整数を格納する。四則演算ができる。
小数点以下ありの数値 小数点付きの数値。
True または False TrueとFalse、2つの値のみで、2択に分岐する場合に使用する。
期間 時間を格納する。
日付 日付を格納する。日数の足し算引き算ができる。
スコープ

変数を使用できる範囲を指定します。

もう少し詳しく言うと、コンテナーアクティビティの、どの範囲まで変数が適用されるかを決定するのがスコープです。

コンテナーとは、中にアクティビティを追加できるアクティビティを指し、Ifなどの条件分岐、繰り返し、グループなどです。

グループ大、中、小のアクティビティがあり、中の内側に[変数の値を設定]がある、こちらの例で説明します。

この状態でスコープを開くと、Main、グループ大、グループ中の3つが指定できます。

これは、指定できる範囲が、自分が含まれているコンテナー内までしか選択できないことを意味します。

つまり、この例だと"グループ小"は指定対象外となります。

では、ここで、スコープを[グループ中]にしました。

例えば[Write Line]を配置して、[変数A]が指定できる位置が、どこなのかを考えてみます。

[変数の値を設定]の直下であれば、問題なく変数Aを指定できます。

その他、番号のどの位置で指定できるかというと、[グループ中]の内側にある①②では指定可能で、外側にある③④の位置では指定できません。

グループ中、グループ大、Mainで、以下表のようになります。

スコープ
グループ中 OK OK NG NG
グループ大 OK OK OK NG
Mian OK OK OK OK

スコープのMainは、範囲全体の意味になるため、どこでも参照可能になります。

既定値

[変数の値を設定]で追加した変数は、実際には、追加した場所以降ではなく、一番先頭から参照することができます。

  1. プロジェクトの最初のタイミングで変数を設定
  2. アクティビティの位置で変数に値を代入

この流れだということです。

ここで、既定値を設定すると、以下のように変わります。

  1. プロジェクトの最初のタイミングで変数を設定すると同時に値を代入
  2. アクティビティの位置で変数に値を代入

[変数の値を設定]アクションで既定値を設定すると、流れを把握しにくくなりますので、予めルールを決めた上で使用するといいですね。

作成済みの変数を選択

一度、[変数の値を設定]を使って変数を登録すると、以降は、登録済みの変数を選択できます。

登録済みの変数を選択することで、変数に代入した値の更新が可能です。

変数の名前を変更

こちらは、すでに変数が設定されている場合に表示されるメニューです。

全体感を揃えるために変数名を変えたいケースはよくありますので、その際に便利ですね。

ちょい技(クリップボード)

[保存先]の[+]-[詳細エディターを開く]をクリックし、”ClipboardX.ObjectValue"を入力してみてください。

すると、クリップボードに値がコピーされるようになります。

保存する値

変数に記憶する値を指定します。

[保存する値]に指定できる値は、変数の型によって変わります。

上図は、変数の型を"テキスト"にした場合ですが、他の型にした場合に表示されるメニューは下表のとおりです。

"ノートブック"、"変数を使用"、"詳細エディターを開く"は、いずれも共通で表示されます。

データの型 表示されるメニュー
テキスト テキスト
テキスト - 空の値
数値
TrueまたはFalse True/False
小数点以下ありの数値
日付 日付/時刻
期間 期間を選択

その他の[保存する値]に指定できる項目

保存された値を使用

既に追加されている、変数を選択することも可能です。

ただ、そのまま変数の値を代入するだけ、ということは、基本的しません。

下図を見てください。

こちらは、[保存先]テキスト型、[保存する値]は日付型のように、属性が違うものを代入しようとしています。

StudioXでは、[保存する値]が違っても、自動的に[保存先]の型に変換してくれます。

[型を変換]アクションを使わずとも、簡易的に型を変換できるので、上手く利用しましょう。

メールの各種項目

メールの各種項目が指定できます。

この場合、変数の型は"テキスト"にする必要があります。

Excelのセル値

Excelのセルを指定できます。

Excelセルの値が、変数のデータ型と一致するよう、自身で合わせる必要があります。

保存する値まとめ

保存する値に指定できるもの

  • テキスト、数、詳細エディターを開く(VB.NET)
  • 保存された値を使用
  • メールの各種項目
  • Excelのセル値

まとめ

共通アクティビティは、ひとつひとつが多岐に渡る動きをしてくれます。

おそらく、ガイドを読んだだけでは分からなかった部分についても、ある程度知識が補えたんじゃないでしょうか。

この記事で、何か1つでも新しい発見が得られたのなら、僕もうれしいです。

-StudioXのアクティビティ

© 2023 おぐしログのRPA入門