アクティビティ
最新
バナーの背景画像
生産性を高めるアクティビティ
最終更新日 2024年4月26日

Excel でデータベースを管理する

以下の例では、データベースを読み込み、新しいデータベースを作成し、結果に基づいてフィルター処理をする方法を説明します。[範囲を読み込み][表を作成][列を挿入][データ テーブルを構築]、および [データ行を追加] などのアクティビティが示されます。これらのアクティビティは、UiPath.Excel.Activities パッケージに含まれています。

サンプルと同等のオートメーション プロセスは以下のように構築できます。

  1. Studio を開いて、新しいプロセスを作成します。プロセスの既定の名前は Main です。

    注: プロジェクト フォルダー内に .xlsx ファイルがあることを確認してください。独自の .xlsx ファイルを使用するか、このページの下部にあるサンプルをダウンロードできます。.xlsx ファイルは、新しいデータベースを生成するためにデータを取得および処理するために使用されます。
  2. デザイナー パネルに [シーケンス] コンテナーをドラッグします。

    • 次の変数を作成します。

      変数名

      変数の型

      既定値

      excelFile

      文字列

      "Exam results.xlsx"

      resultsDt

      System.Data.DataTable

      N/A

      studentGradesDt

      System.Data.DataTable

      N/A

      passedStudents

      Int32

      0

      failedStudents

      Int32

      0

      statisticsDt

      System.Data.DataTable

      N/A
  3. シーケンス内に [Excel アプリケーション スコープ] をドラッグします。

    • [プロパティ] パネルで、[ブック パス] フィールドに値 excelFile を追加します。
    • [自動保存][新しいファイルを作成]、および [可視] オプションのチェック ボックスを選択します。これによりロボットが新しい Excel ブックを作成し、それに加えられたすべての変更を自動的に保存し、アクションを実行しながら Excel ファイルを前面で開くことができるようになります。
  4. Excel の [範囲を読み込み] アクティビティを、[Excel アプリケーション スコープ][実行] シーケンス内に配置します。

    • [プロパティ] パネルで、[シート名] フィールドに値 "Sheet1" を、[データ テーブル] 出力フィールドに変数 studentGradesDt を追加します。
    • 最初の行がヘッダーとみなされるように、[ヘッダーを追加] オプションのチェック ボックスを選択します。
  5. [表を作成] アクティビティを、[範囲を読み込み] アクティビティの下にドラッグします。

    • [プロパティ] パネルで、値 "Sheet1!$A$1:$C$11"[範囲] フィールドに、名前 "Grades"[表の名前] フィールドに、名前 "Sheet1"[シート名] フィールドに追加します。
  6. [列を挿入] アクティビティを、[表を作成] アクティビティの下に追加します。

    • [プロパティ] パネルで、名前 "Result"[列名] フィールドに、名前 "Sheet1"[シート名] フィールドに、そして名前 "Grades"[表の名前] フィールドに追加します。
  7. [データ テーブルを構築] アクティビティを、[列を挿入] アクティビティの下に配置します。

    • [データ テーブル] 出力フィールドに変数 resultsDt を追加します。
    • [データ テーブルを構築] アクティビティの本体内で、[データ テーブル] ボタンをクリックします。
    • [列を編集] ボタンをクリックして、名前 Result[列名] フィールドに追加します。
    • [データ型][String] に設定します。
    • [null を許可] チェック ボックスを選択して、ロボットが null 値を考慮できるようにします。
    • [最大長] フィールドに値 100 を追加します。
    • ウィンドウを閉じるために、[OK] オプションを選択します。
    • ウィンドウを閉じるにはもう一度 [OK] ボタンを選択します。
  8. [繰り返し (各行)] アクティビティを、[データ テーブルを構築] アクティビティの下にドラッグします。

    • [プロパティ] パネルで、変数 studentGradesDt を [データ テーブル]
  9. [繰り返し (各行)] アクティビティの本体内に [条件分岐 (if)] アクティビティを追加します。

    • cint(row("Grade")) < 5[Condition] フィールドに挿入します。この式は .xlsx ファイルの行 Grade にあるデータを分析して、値が 5 より大きいか小さいかを判断します。
  10. [Then][Else] フィールドに 1 つずつ、2 つの新しい [シーケンス] をドラッグします。

    • [Then] エリアのシーケンスを Failed[Else] エリアのシーケンスを Passed と名付けます。
  11. [データ行を追加] アクティビティを、[Failed] シーケンス内部に配置します。

    • [プロパティ] パネルで、[列配列]フィールドに条件 { "Failed" } を、[データ テーブル] フィールドに変数 resultsDt を追加します。
  12. [代入] アクティビティを、[データ行を追加] アクティビティの下に配置します。

    • 変数 failedStudents[左辺値 (To)] フィールドに、条件 failedStudents + 1[右辺値 (Value)] フィールドに追加します。
  13. [データ行を追加] アクティビティを、[Passed] シーケンス内部に配置します。

    • [プロパティ] パネルで、[列配列]フィールドに条件 { "Passed" } を、[データ テーブル] フィールドに変数 resultsDt を追加します。
  14. [代入] アクティビティを、[データ行を追加] アクティビティの下に配置します。

    • 変数 passedStudents[左辺値 (To)] フィールドに、条件 passedStudents + 1[右辺値 (Value)] フィールドに追加します。
  15. [データ テーブルを構築] アクティビティを、[繰り返し (各行)] アクティビティの下に配置します。

    • [プロパティ] パネルで、[データ テーブル] 出力フィールドに変数 statisticsDt を追加します。
    • [データ テーブルを構築] アクティビティの本体内で、[データ テーブル] ボタンをクリックします。
    • 左側の [列を編集] ボタンをクリックして、名前 Failed[列名] フィールドに追加します。
    • [データ型][Int32] に設定します。
    • [null を許可] オプションのチェック ボックスを選択して、ロボットが null 値を考慮できるようにします。
    • ウィンドウを閉じるために、[OK] オプションを選択します。
    • [OK] ボタンをもう一度選択して、ウィンドウを閉じます。
    • 右側の [列を編集] ボタンをクリックして、名前 Passed[列名] フィールドに追加します。
    • [データ型][Int32] に設定します。
    • [null を許可] オプションのチェック ボックスを選択して、ロボットが null 値を考慮できるようにします。
    • ウィンドウを閉じるために、[OK] オプションを選択します。
    • [OK] ボタンをもう一度選択して、ウィンドウを閉じます。
  16. [代入] アクティビティを、[データ テーブルを構築] アクティビティの下に追加します。

    • 条件 statisticsDt.Rows(0)("Failed")[左辺値 (To)] フィールドに、変数 failedStudents[右辺値 (Value)] フィールドに挿入します。
  17. 前のアクティビティの下に別の [代入] アクティビティを追加します。

    • 条件 statisticsDt.Rows(0)("Passed")[左辺値 (To)] フィールドに、変数 passedStudents[右辺値 (Value)] フィールドに挿入します。
  18. Excel の [範囲に書き込み] アクティビティを、[代入] アクティビティの下に配置します。

    • [プロパティ] パネルで、[シート名] フィールドに名前 "Sheet1" を、[開始セル] フィールドに値 "D1" を、そして [データ テーブル] フィールドに変数 resultsDt を追加します。
  19. 新しい Excel の [範囲に書き込み] アクティビティを追加し、最初のアクティビティの下に追加します。

    • [プロパティ] パネルで、[シート名] フィールドに名前 "Sheet2" を、[開始セル] フィールドに値 "A1" を、そして [データ テーブル] フィールドに値 new DataTable() を追加します。
  20. 前のアクティビティの下に別の Excel の [範囲に書き込み] アクティビティをドラッグします。

    • [プロパティ] パネルで、[シート名] フィールドに名前 "Sheet2" を、[開始セル] フィールドに値 "A1" を、そして [データ テーブル] フィールドに変数 statisticsDt を追加します。
    • ロボットが最初の行をヘッダーとみなすように、[ヘッダーを追加] チェック ボックスを選択します。
  21. プロセスを実行します。ロボットは .xlsx ファイルを読み取り、データを分析し、新しいデータベースを作成し、指定どおりに結果を並べ替えます。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.