UiPathでファイル間で変数を共有したいけど、どうすれば設定すればいいかわからないときってありますよね?
今回はUiPathで引数(OUT)を使ったワークフローの作り方について解説します。
この記事を読むことでサブファイルの変数をMainファイルへ共有できるようになります!
引数(IN)についても関連記事で紹介しているので併せて参照ください↓
引数(OUT)を使ったワークフロー作成
前回記事で引数(IN)を使ってMain.xamlの変数をサブファイルへ共有しました。
こちらは引数の方向がINのときのイメージです↓
![UiPath 引数方向IN イメージ](https://automate-lab.com/wp-content/uploads/2022/02/ad328257df3c27d0237be29c2f1fd87c-1-1024x468.png)
引数(IN)を使うとMain.xamlの変数を変更するだけで他のファイルも反映されます。
フローの構成がすっきりしたり、編集する箇所を少なくできて効率的です。
INではメインファイルの変数をサブファイルへ渡しました。
もちろんその逆もできます!
こちらは引数の方向がOUTのときのイメージです↓
![UiPath 引数方向OUT イメージ](https://automate-lab.com/wp-content/uploads/2022/02/b1db37a1df6c6332fc8bdf704e9d1e49-2-1024x419.png)
今回はサブファイルの変数をMainファイルへ共有できるOUTについて説明をします。
まずは新しい空のプロセスが開きます↓
![](https://automate-lab.com/wp-content/uploads/2022/02/1229c317e01c766a53c2709efe066b18.png)
今回は引数OUTというファイルにしました。
まずMain.xaml以外のサブファイルを作成します。
![](https://automate-lab.com/wp-content/uploads/2022/02/f96d9b4281f6d16b3c7589aed5a17be5-3-1024x595.png)
プロジェクト欄のファイル構成を右クリックし、追加>シーケンスで新しいフローを作ります。
![](https://automate-lab.com/wp-content/uploads/2022/02/c8856789ec11ab8b1013037cef6929f9-5-1024x577.png)
するとワークフローが作られます。
今回はファイル設定OUTという名前にしています。
次にこのファイルで変数を設定してログ出力するフローを作ります↓
![](https://automate-lab.com/wp-content/uploads/2022/02/3a4f695a458cb0ac0aceaa2eb13ac2dd-3-1024x783.png)
まずは代入アクティビティをフローに追加します。
①で引数タブをクリックして②で引数の名前を設定します。
今回はファイル名_OUTとしていますが何でもよいです。
次に③で方向を設定します。
今回はメインファイルに変数を出すので出力とします。
※引数の方向を間違えると変数共有ができないので注意してください!
今回は引数の値にtest.xlsxと設定しています。
ログで正しく出力されるか確認をします↓
![](https://automate-lab.com/wp-content/uploads/2022/02/f96d9b4281f6d16b3c7589aed5a17be5-4.jpg)
ログのメッセージ内容と同じ内容が出力されました。大成功!
サブファイルで作成した引数をMain.xamlに渡して変数を紐づけます。
これをインポートと言います。
![](https://automate-lab.com/wp-content/uploads/2022/02/94ed160662be198949535a112047e9b4-4-1024x531.jpg)
Main.xamlを開き、シーケンスの中にサブファイル(ファイル設定OUT.xaml)を入れます。
これでサブファイルを呼び出せます。
そうすると引数をインポートのボタンがオレンジ色になります。
これは変数と引数が共有できるよ!という合図です。クリックをして中身を見ます。
![](https://automate-lab.com/wp-content/uploads/2022/02/f4a1b0aed5dc02442c433030ff24c031-2-1024x271.png)
名前にサブファイルでつくった引数が自動で入っています。
値が空欄になっているのでMain.xamlで受け取る変数を入力してあげます。
設定していない場合はCtr + Kで変数を設定してください。
これでファイル間で変数の共有ができるようになります。
これまでの流れを図で表すとこのようなイメージです↓
![UiPath 引数方向OUT イメージ](https://automate-lab.com/wp-content/uploads/2022/02/90b0dfa136419ccc91fda6fec27764ca-1-1024x476.png)
サブファイルで引数を設定して、Main.xamlに情報が出してあげるのでOUTを使う。
これだけです。
今回作成したワークフローです↓
![](https://automate-lab.com/wp-content/uploads/2022/02/571a82aa9fa95e9dd03f724dc3a94890-1-1024x524.png)
まず①でファイル設定OUTを開きます。
②で引数を設定してMain.xamlへ変数として渡し、ログの表示をします。
最後に③でサブファイルの変数を受けとってログを表示します。
![](https://automate-lab.com/wp-content/uploads/2022/02/1229c317e01c766a53c2709efe066b18-1-1024x356.png)
最初にサブファイルの結果が表示されました。
次にMainでの結果が表示されています。
変数が共有されたので2つとも同じファイル名が出力されました。大成功!
まとめ
今回は「【はじめてのUiPath】引数(OUT)を使って変数を受けとる」を説明しました。
- Mainファイル以外の変数を共有できる
- Main.xamlに情報が出す場合はOUTを使う
![こたろー](https://automate-lab.com/wp-content/uploads/2022/08/029e819ed9e509be92133288e874e0b6.png)
以上、こたろーでした。