UiPath : Excelワークシートの各行をループしてセルの値を取得する方法

UiPath はRPA製品の1つです。プログラミング不要で簡単にプログラムを作成できます。

この記事では、「繰り返し(各行)」アクティビティを使用して、Excelワークシートの各行をループしてセルの値を取得する方法を紹介します。

1. この処理で使用するExcelデータ

「GetExcelRowData.xlsx」というファイル名で以下のようなExcelファイルを使用します。

2. シーケンス

以下のシーケンスを作成することで、各行をループする処理を構築することが可能です。

3. 変数

変数定義は以下になります。

「ExcelRangeDataTable」(DataTable型)という変数を使用します。

4. 処理1:Excelアプリケーションスコープ

「Excelアプリケーションスコープ」アクティビティを使用してExcelファイルを開きます。

5. 処理2:範囲を読み込み

「範囲を読み込み」アクティビティを使用してExcelワークシート内にあるテーブルを取得します。

プロパティ「範囲」に「""」を入力した場合、ワークシートの左上にある表が対象になります。

オプション「ヘッダーの追加」にチェックが入っていますので、1行目はヘッダ行とみなされます。

出力「データテーブル」プロパティに、「ExcelRangeDataTable(DataTable型)」変数を指定します。この変数の中に、Excelのテーブルの値がセットされます。

6. 処理3:繰り返し(各行)

「ExcelRangeDataTable」のデータテーブルの各行を繰り返します。

コレクションに「ExcelRangeDataTable」を指定します。

1行分が「row」変数にセットされます。

7. 処理4:row変数から値を取得

row変数は左から配列のようなイメージでセットされます。

今回のExcelファイルで言うと、このようになります。

  • row(0) ・・・ 番号
  • row(1) ・・・ 内容
  • row(2) ・・・ 日付

今回のシーケンスでは、メッセージボックスに「row(1).ToString()」と記載していますので、「内容」の値が表示されます。

また、rowプロパティは添え字だけでなく、ヘッダ文字列を使用して値を取得することも可能です。 今回のExcelファイルで言うと、

  • row(0) = row("番号")
  • row(1) = row("内容")
  • row(2) = row("日付")

と同じ意味になります。

8 UiPathのロボット開発相談を検討してみませんか?

私はシステムエンジニアとして10年以上経験があり、プロジェクトリーダーとしてUiPath導入を行ってきました。実務経験が豊富にありますので、UiPathの開発相談を頂ければ誠心誠意対応させて頂きます。

Twitter DM (https://twitter.com/Harus0313)または、以下のGoogleフォームまでご連絡頂けますと幸いです。

速攻でメモできる QuickNote リリースしました!

QuickNoteは動作が超軽量でサクサクかけるノートアプリです。一瞬の閃きを逃さずにノートを開き書き始めることができます。 アカウント登録も不要です。お試しあれ!

Excel操作をコマンドで! proBoarderExcel

Excelはマウスで操作するのが基本ですが、マウス操作に疲れてはいませんか? キーボードでExcel操作ができるようになるアプリです。オープンソースで無料です。

積み上げ! Daily Stack リリースしました!

Daily Stack は日々の積み上げを管理するToDoアプリです。過去の積み上げの振り返りだけでなく、ツイート機能もあります。 アカウント登録不要ですぐに使い始めることができます。

ExecNote.app リリースしました!

ExecNoteは、コードが実行できるMarkdownアプリケーションです。Markdownドキュメント内に記載したコードをクリックすると実行ができます。わざわざターミナルを 起動させる必要がありません!無料ですのでもしよければダウンロードをお願いします。

About Me

11年目のシステムエンジニアです。アプリで生活や仕事を改善したい🐱仕事効率化、自動化のアプリ開発が得意です、ご相談ください。 🚀エンタメ系アプリの開発も模索中🐬社内SEや個人アプリ開発者、システムエンジニアになりたい人と繋がりたい🐱