編集

【UiPath】設定情報ファイルをDictionary型で取り込む

2025/08/12
【UiPath】設定情報ファイルをDictionary型で取り込む

業務自動化の手法としてExcelVBAだけではなくRPA(UiPath)についても備忘録として残していこうと思っています。

業務自動化のお仕事をしていると「Excelマクロでいいじゃん」とか「RPAだけで完結したい」とかどちらか片方に全振りするような意見もありますが、それぞれ得意な分野がありますので、一長一短を上手く考慮しながら進めるのがストレスなくプロジェクトを進められるかなと思います。

ExcelはExcelだけで完結するような業務であればマクロで充分です。しかしWebブラウザや基幹システムなど別のアプリケーションを操作する場合であればUiPathの方が得意でしょう。あるいは別のアプリケーションを導入してみるなど、最善の方法を考えるのも業務改善の醍醐味だったりします。

初回は、実際の業務の処理をRPAで操作する前に、まずはRPA開発のテンプレートとも言える「設定情報ファイルの読み込み」からご紹介したいと思います。

設定情報ファイルとは何か

各会社によって呼び名は違うかもしれません。それこそ「iniファイル」だったり「configファイル」だったり「パラメータファイル」だったり。これらは、RPAが処理を始める前に最初に読み込むファイルです。

何が書かれているかというと、ファイル名やらフォルダの場所やらWebブラウザのURLやらメールアドレスやら...。とにかくRPAでは「今後変更がありそうなもの」については全て「外に出しておく」ということをします。と言うのも、RPAは実際開発していればすぐに分かると思いますが、どこか1つを修正するとなったときの影響範囲がとても大きいためです。

なので、ファイル名にしろフォルダの場所にしろメールアドレスにしろ、例えば組織改編でフォルダの場所が変わるだとか、部署移動や退職で担当者が変わるなどしたときに、RPAでそのままテキストで打ち込んでいると修正がとても大変になります。外に出しておけば、設定情報ファイルを変更するだけで済みますからね。

自分1人だけでRPA使うくらいなら問題ありませんが、会社の資産として開発する場合はなるべく設定情報ファイルを作る癖をつけましょう。

開発環境

  • UiPath Studio Community Edition
  • Excel 2019

事前準備

  1. Excelで「設定情報.xlsx」を用意します。
    「Key」はUiPathで呼び出すときの名称、「Value」が可変の値、「Description」は項目の説明です。
    設定情報ファイルサンプル
  2. UiPath Studioで「空のプロジェクト」を用意します(プロジェクト名はお好みで)。
  3. 設定情報ファイルはプロジェクトフォルダの外側に配置します。
    フォルダ構成

UiPath製造

  1. Main.xamlを開き『フローチャート』アクティビティを配置します。
  2. フローチャートアクティビティの中に『シーケンス』アクティビティを配置します。名前を「設定情報の読込」にします。
  3. 変数パネルで変数を作ります。型は「Dictionary型(String,String)」にします。
    変数パネル
    変数検索
  4. シーケンスの中に『代入』アクティビティを配置します。下記情報をそれぞれ入力します。
    左辺:設定情報 = 右辺:New Dictionary(of String,String)
    代入アクティビティ①
  5. シーケンスの中に『Excelプロセススコープ』を配置します。
    「実行」の枠は不要なので削除します。
    プロパティパネルで、Excelウィンドウを表示を「False」、プロセスモードを「常に新規作成」にします。
    プロパティ
  6. Excelプロセススコープの中に『Excelファイルを使用』アクティビティを配置します。
    「実行」の枠は不要なので削除します。
    Excelファイルのフォルダ参照から設定情報ファイルを指定します。
    変更を保存・存在しない場合ファイルを作成のチェックを外します。
    Excelファイルを使用
  7. Excelファイルを使用の中に『繰り返し(Excelの各行)』アクティビティを配置します。
    「実行」の枠は不要なので削除します。
    対象範囲の⊕から設定情報シートを指定します。先頭行をヘッダーとするにチェックを入れます。
    繰り返し(Excelの各行)
  8. シーケンスの中に『代入』アクティビティを配置します。下記情報をそれぞれ入力します。
    左辺:設定情報(CurrentRow(“Key”).ToString) = 右辺:CurrentRow(“Value”).ToString
    代入アクティビティ②
  9. シーケンスの中に『1行を書き込み』アクティビティを配置します。テキストに「設定情報("AAA")」と入力します。
  10. ファイルをデバッグで処理を実行します。
  11. 出力パネルに設定情報ファイルに記載してあるValueの列の値が表示されていればOKです。

サンプルMain.xaml

サンプルMain.xaml

以上。