activities
latest
false
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。
UiPath logo, featuring letters U and I in white

生産性を高めるアクティビティ

最終更新日時 2026年3月9日

Excel ファイルのデータを並べ替える

以下の例では、.xlsx ファイルの表を処理して、すべての行に表示されるデータを重複なく昇順で表示する方法について説明します。

[ データ行を削除]、[ 範囲を読み込み ]、[ 表を並べ替え] などのアクティビティを使用します。これらのアクティビティは UiPath.Excel.Activities パッケージに含まれています。

以下の例では、idfirst-namelast-nameemailgender の 5 つの行を含む表を使用します。表のエントリは降順に配置されています。一部の行はシート内で複数回表示されます。オートメーション プロセスによって、データは昇順に並び替えられ、すべての重複が削除されます。

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

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

使用する .xlsx ファイルをプロジェクト フォルダーに必ず追加してください。このページの下部からサンプルをダウンロードして、サンプルに含まれるファイルを使用することもできます。

  1. ワークフロー デザイナー[フローチャート] をドラッグします。

    • 次の変数を作成します。
    変数名変数の型既定値
    existingColumnsWorkbookApplicationN/A
  2. [フローチャート][Excel アプリケーション スコープ] アクティビティをドラッグし、[Start] ノードに接続します。

    • [Excel アプリケーション スコープ] アクティビティをダブルクリックして開きます。
    • [プロパティ] パネルで、[表示名] フィールドに Sorting rows ascending を追加します。
    • [ブック パス] フィールドに .xlsx ファイルのパスを追加します。このサンプルの場合は Book.xlsx です。
    • [自動保存][新しいファイルを作成]、および [可視] オプションのチェック ボックスを選択します。これによりロボットが新しい Excel ブックを作成し、それに加えられたすべての変更を自動的に保存し、アクションを実行しながら Excel ファイルを前面で開くことができるようになります。
    • [ブック] フィールドに existingColumns 変数を追加します。
  3. [Excel アプリケーション スコープ] アクティビティ内の [実行] シーケンスを選択し、次の変数を作成します。

    変数名変数の型既定値
    descendingOrderSystem.Data.DataTableN/A
  4. [実行] シーケンス内に Excel の [範囲を読み込み] アクティビティをドラッグします。

    • [プロパティ] パネルで [シート名] フィールドに名前 "Sheet1" を追加します。
    • 表の最初の行をヘッダーとみなすために [ヘッダーを追加] チェック ボックスを選択します。
    • [データ テーブル] フィールドに変数 descendingOrder を追加します。
  5. [範囲を読み込み] アクティビティの下に [表を並べ替え] アクティビティを配置します。

    • [プロパティ] パネルで [列名] フィールドに名前 "id" を追加します。
    • [順序] リストから Ascending を選択します。
    • [シート名] フィールドに名前 "Sheet1" を追加します。
    • [表の名前] フィールドに名前 "Table1" を追加します。
  6. [フローチャート] ワークフローに戻ります。

  7. [Excel アプリケーション スコープ] アクティビティをドラッグし、前の [Excel アプリケーション スコープ] に接続します。

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

    • [プロパティ] パネルで [シート名] フィールドに名前 "Sheet1" を追加します。
    • 表の最初の行をヘッダーとみなすために [ヘッダーを追加] チェック ボックスを選択します。
    • [データ テーブル] フィールドに変数 descendingOrder を追加します。
  9. [範囲を読み込み] アクティビティの下に [繰り返し (前判定)] アクティビティを配置します。

    • 次の変数を作成します。
    変数名変数の型既定値
    rowIndexInt320
    • [条件] フィールドに式 rowIndex+1 < descendingOrder.Rows.Count を追加します。この式は表全体を処理し、row index +1 が行の合計数よりも小さくなるまで、[繰り返し (前判定)] ループを実行できるようにします。
  10. [繰り返し (前判定)] の本体に [シーケンス] コンテナーを追加します。

    • 次の変数を作成します。
    変数名変数の型既定値
    rowSystem.Data.DataRowN/A
    rowNextSystem.Data.DataRowN/A
  11. 前に作成された [シーケンス] コンテナー内に [代入] アクティビティを配置します。

    • [左辺値 (To)] フィールドに変数 row を、[右辺値 (Value)] フィールドに式 descendingOrder.Rows(rowIndex) を追加します。これにより、インデックスに従って、行に含まれる情報を row 変数に割り当てることができます。
  12. もう 1 つの [代入] アクティビティを追加し、前のアクティビティの下に配置します。

    • [左辺値 (To)] フィールドに変数 rowNext を追加し、[右辺値 (Value)] フィールドに式 descendingOrder.Rows(rowIndex+1) を追加します。これにより、次の行の値が rowNext 変数に代入され、また、表全体にこの処理を繰り返せるようになります。
  13. [代入] アクティビティの下に [条件分岐 (if)] アクティビティを追加します。

    • [Condition] フィールドに式 row(0).ToString=rowNext(0).Tostring を追加します。この条件は row 変数に含まれるデータが rowNext 変数に含まれるデータと同一かどうかを確認します。
  14. [条件分岐 (if)] アクティビティの [Then] フィールドに [データ行を削除] アクティビティをドラッグします。

    • [データ テーブル] フィールドに変数 descendingOrder を追加し、[行] フィールドに変数 rowNext を追加します。
  15. [条件分岐 (if)] アクティビティの [Else] フィールドに [代入] アクティビティを配置します。

    • [左辺値 (To)] フィールドに変数 rowIndex を、[右辺値 (Value)] フィールドに式 rowIndex+1 を追加します。
  16. [範囲に書き込み] アクティビティを [繰り返し (前判定)] アクティビティの下に追加します。

    • [シート名] フィールドに名前 "A1" を追加し、[開始セル] フィールドに変数 descendingOrder を追加し、[データ テーブル] フィールドに変数 "Sheet2" を追加します。
    • 表の最初の行をヘッダーとみなすために [ヘッダーを追加] チェック ボックスを選択します。
  17. プロセスを実行します。オートメーション プロセスは、重複なしにデータを昇順に表示する新しいシートを作成します。

このページは役に立ちましたか?

接続

ヘルプ リソース サポート

学習する UiPath アカデミー

質問する UiPath フォーラム

最新情報を取得