サイト内検索
サイト内検索を閉じる

#6 現場のIT初心者が教える!UiPath RPAのつまずきポイントと乗り越え方

公開日:2025年11月

近年、ローコード開発ツールの普及により、プログラミングの知識が少なくても比較的簡単に便利なシステムを作成できるようになりました。私は新卒で建設業界に就職しましたが、現場のIT化の遅れを実感し、業務効率化の必要性から、IT業界へ転職しました。現在は、UiPathを主に扱うチームに所属し、TISの基幹システム周辺の業務自動化RPAプロジェクトに携わっています。入社当初は、さまざまな壁に直面し悩む日々が続きましたが、経験を重ねるうちにUiPathにも慣れ、効率的に業務を遂行できるようになりました。
本コラムでは、私の経験を振り返り、「プログラミング初学者」×「UiPath」の観点から、つまずきやすいポイントと、最低限押さえておきたい内容をまとめました。同じ悩みを持つ方の参考になれば幸いです。

1.「プログラミング初学者」×「UiPath」のつまずきポイント

プログラミング初学者のつまずきポイント

プログラミングを学び始めると、環境構築やツールの準備に戸惑うことも多いですが、ここでは「プログラムの基礎的な概念」に焦点を当てて、初学者がよく直面する壁を整理します。

  • 文法や基本構文
  • 変数とデータ型
  • 制御構文や関数
  • エラーとデバッグ

特にこの4つで苦戦する人が多い印象です。

UiPathのつまずきポイント

UiPathもプログラミングと同様に、以下4つの基礎的な概念でつまずくことが多いです。

  • アクティビティ
    *UiPath Studio でオートメーション プロジェクトを設計するための構成要素。UiPath Studio上には多種多様なアクティビティが存在しており、アクティビティの組み合わせによって処理の自動化を実現することができる。
  • セレクター
  • 制御フロー
    *処理の自動化におけるアクション実行または評価する順序のこと。変数やアクティビティを使用することで、適切な制御フローを実現することができる。
  • エラー・デバッグ

この中でも、特に「セレクター」はつまずきやすいポイントです。
次章以降で、「プログラミング初学者」×「UiPath」の観点から、特に重要な「変数とデータ型」、「セレクター」について、詳しく解説します。

2.UiPathで主に利用される変数について

データ型の種類と役割

変数とは、データを一時的に保存するための「名前付きの箱」のようなものです。プログラム内で扱う数値や文字列などのデータを変数に保存し、必要に応じて呼び出したり変更したりできます。数値型の変数には数値データ、文字列型の変数には文字列データのように、変数のデータ型に対応したデータを保存できるようになっています。
なぜ変数にデータ型が必要なのかというと、コンピューターがその変数のデータをどのように扱うか判断するためです。プログラムで扱うデータには数字や文字列、日付などさまざまな種類があります。数値の「1」と文字列の「"1"」は同じように見えますが、プログラムからすると意味が異なります。

数値データと文字列データの足し算を例に結果の違いを確認してください。

  • 数値データ:1+1=2
  • 文字列データ:”1”+”1”=”11”

このように、データ型によって足し算の結果が全く異なります。変数に型が存在することで、予期せぬエラーが減り、プログラムの品質が向上します。その他にもデータ型が必要とされる理由はありますが、プログラミング初学者の方は「予期せぬエラーを発生させないために変数のデータ型が存在している」と覚えていただくと良いでしょう。
UiPathでよく使われる基本的な変数の種類は以下の5つです。

データ型 説明
String 文字列型、良く利用されるデータ型 “TIS”、”123” (※1)
Int32 小数ではない整数の数値型、計算に利用 1、10、-5
Double 小数を含む数値型、金額や割合の計算に利用 1.414、3.14
Boolean 真偽値、条件分岐のif文で利用 True、False
DateTime 日付や時刻の日付型 2025-11-19

表1:UiPathでよく利用される基本的な変数

**補足**
※1 数値ではなく文字列として扱われます。

さらに、少し応用的な変数も紹介します。

データ型 説明
DataTable Excelの表のように行と列のデータ この表全体
DataRow DataTable内の1行のデータ この表の特定の1行
Array 同じデータ型の値を複数持つ配列データ {“A”, ”ABC”, “東京”}
FileInfo/DirectoryInfo ファイルやフォルダの情報データ ファイルパス、フォルダパス
Exception エラー情報のデータ エラー情報をまとめたオブジェクト

表2:UiPathでよく利用される応用的な変数

よくあるデータ型の不一致とその対処

前述の通り、変数のデータ型と格納するデータの種類は必ず一致させる必要があります。
OK例:number(数値型の変数)には「0」「10」「-1」などの数値データを格納できます。

図1:数値型の変数numberに数値データを格納

NG例:number(数値型の変数)に「TIS」「東京」などの文字列データは格納できません。

図2:数値型の変数numberに文字列データを格納でエラー

データ型が一致しないと、プログラムはエラーとなり、正常に動作しません。特にRPAでは、ExcelやWebサイトから取得したデータが「文字列」として扱われることが多いため、これを「数値」や「日付」として計算や処理する場合は「データ型変換」が必要です。逆に、数値型のデータをWebサイトのテキスト入力欄に入力する場合は、文字列型に変換する必要があります。
具体的な変換方法:
■数値型 ⇔ 文字列型 の変換

  • 数値型(number)→文字列型(text):
    number.ToStringを格納することで、数値を文字列としてWebサイトの入力欄に入れることができます。
図3:文字列型の変数に数値データ(変数)を文字列型に変換して格納
  • 文字列型(text)→数値型(number):
    CInt(text)を格納することで、文字列データを数値として扱うことができます。
    Webサイトから取得した文字列をCInt(text)で数値化し、CInt(text) - 1のような計算が可能です。
図4:数値型の変数に文字列データ(変数)を数値型に変換して格納

このように、変数の型とデータ型の関係、および型変換の方法を理解しておくことが、RPAやプログラミングにおいて重要なステップです。

3.セレクターについて

セレクターの概要

RPAのセレクターとは、Webサイトの画面に表示されているUI要素(ボタンやテキストボックスなど)を特定するための「住所」のようなものです。例えば、図5のWebサイトで特定のコラムをクリックするためのセレクターは以下の通りです。

図5:Webサイトからセレクターを取得するイメージ
図6:図5のWebサイトからコラムタイトルを取得したセレクター

このセレクターは、Webサイト画面の自動化処理を作成する際に最も重要な概念の一つです。セレクターを理解することで、自動化処理の恩恵を最大限に感じることができます。UiPathのセレクターは、画面要素を構造的に認識しているため、画面サイズが変わった場合でも安定した動作を容易に実現できます。
しかし、セレクターを取得する際に気を付けるべきポイントがあります。次項にて、セレクターでつまずきやすいポイントと解決方法について説明します。

さっきまでは動いていたのに今は動かない

RPA初学者がWebサイトの自動化処理を開発しているときによく遭遇するのが、「さっきまで動いていたのに今は動かなくなった」という現象です。その多くはセレクターの中に毎回変化する部分が存在していることが原因です。例えば、図7のようなWebサイトのカレンダーを利用して、当日の日付をクリックする自動化処理フローがあったとします。

図7:カレンダーから任意の日付を取得するイメージ
  • 2025年10月1日をクリックするためのセレクター
図8:2025年10月1日のセレクターイメージ
  • 2025年10月2日をクリックするためのセレクター
図9:2025年10月2日のセレクターイメージ

図8と図9を見比べていただくと分かりますが、aaname属性が日付によって異なっています。この毎回変わる部分が、「さっきまでは動いていたのに今は動かなくなった」現象を引き起こす原因となります。この場合、aaname属性の値「1先勝」や「2友引」の部分が変わっても問題がないように、工夫する必要があります。
工夫の仕方の一例を紹介します。

  1. 1や2の数字部分に変数textを設定する
  2. 先勝や友引をワイルドカード「*」に設定する
図10:セレクターを工夫したイメージ

この2点を工夫すれば、カレンダー上のどの日付でもクリックできるようになります。具体的には、事前に当日日付を変数textに格納しておくことで、日付が変わった場合でも当日の日付をクリックできます。また、セレクターは文字列型データを原則として扱うため、textに入れる値はデータ型変換で数値型から文字列型に変換しておきましょう。また、日付を指定する際、「先勝」や「友引」など六曜を意識する必要はないため、ワイルドカード「*」を設定します。ワイルドカードとは、すべての値を許容するという意味です。このように設定することで、どの日付の自動化処理を実行しても、その日の六曜が何であっても当日の日付をクリックできるようになります。

4.乗り越えるコツ

変数のデータ型エラーの場合、図11のようにUiPath Studioの画面に明示的にエラーが発生していることがわかり、プログラムを実行できないため、エラーの原因はすぐに特定できます。

図11:変数にデータ格納時のエラーイメージ

しかし、セレクターに誤りがある場合ではセレクターが原因だと気づかず、エラーの原因を特定することは困難です。そのため、エラーの原因を特定するためのステップを本章では解説していきたいと思います。

デバッグ機能

デバッグとは、「プログラムの上のどこで何が起きているかを確認しながら原因を探す作業」です。RPAに限らず、プログラミングをしていると途中でエラーが発生し処理が止まることや、想定通りに動作しないことがあります。このような状況で役に立つのがデバッグ機能です。UiPath Studioでは、実行を一時停止しながら動きを追いかけることや変数やセレクターの値をリアルタイムで確認することができます。図12の「ファイルをデバッグ」や「デバッグ」が該当します。

図12:デバッグボタン(UiPath Studio v23.10.4)

また、デバッグ機能と同時に活躍するのがブレークポイント(図13右下の赤丸) です。これはプログラムをデバッグ機能で動作させているときに、処理を一時停止したい箇所で動作を一時中断する目印になります。このブレークポイントとデバッグの使い方として、デバッグ実行する前に変数やセレクターの内容を確認したい処理にブレークポイントを打ち、デバッグ実行します。ブレークポイントで処理が一時中断し、セレクターに設定した変数textに選択したい日付の値(図13の左上) が想定通りか目視で確認できます。

図13:ブレークポイント

変数の値だけでなく、セレクターの値(図14のFullSelectorArgument)も確認できるため、セレクターに変数として渡した値が正常か確認することもできます。

図14:セレクターの値イメージ

このように、自動化処理自体は動作しているが想定した結果と異なる場合、原因を特定する作業に役立ちます。想定通りに動いていない場合の典型的な原因は、変数に格納した値が間違っていることやセレクターが適切に設定されていないことが多いです。まずはその2点を確認しながら、自動化処理の開発を進めるとスムーズです。

シンプルな構造

RPAの開発に慣れてくると、さまざまな処理をまとめて自動化したくなり、処理が複雑になりがちです。処理の複雑化は思わぬ箇所でエラーが発生しやすくなるだけでなく、可読性の低下によりエラー原因を特定するのが困難になります。その時に大切なのが、一つのシーケンスには単一処理を実装し、シーケンス単位で動作確認をする習慣です。
ロボットの処理はシーケンス単位で構成されており、シーケンスとはひとまとまりの処理を順に実行する枠組みです。一つのシーケンスに複数の処理を詰め込むと、問題がある箇所を特定しにくくなります。
良くない例として、一つのシーケンス内にブラウザ操作やExcel操作など複数の処理を詰め込みすぎてシーケンス内が煩雑になっている状態です。これではエラーが発生した際に、ブラウザ操作が原因なのか、Excel操作が原因なのかわかりづらくなります。そこで、ブラウザやExcelなど操作するアプリケーション毎に異なるシーケンスに分割することで、エラーの原因を特定しやすくなります。また、シーケンスごとに区切る他のメリットとして、シーケンス単位で動作するかどうかを確認できることがあります。ブラウザ操作だけのシーケンスを動かして問題がないことを確認し、Excel操作だけのシーケンスを動かして問題ないことを確認すれば、最後にそのシーケンス同士を合体させるだけで自動化処理が完成します。
自動化処理を作る際は、次の手順を意識して作業してください。

  1. 一つのシーケンスには単一処理のみを実装
  2. シーケンス単位の動作確認
  3. 最後に複数のシーケンスを組み合わせて動作確認
図15:シンプルな構造のイメージ

この手順こそが、複雑な自動化処理を安定して作成するためのコツです。シンプルな構造で実装し、一つずつエラーを解消していくことで、安定した自動化処理が完成します。

5.まとめ

本コラムでは、「プログラミング初学者」×「UiPath」の観点でつまずきやすいポイントとその解決方法をご紹介しました。つまずきポイントは他にも存在しますが、まずは当時苦戦したポイントを記憶の頼りに書き起こし、初めの一歩でつまずくことなく自動化処理を作成するために押さえておきたい知識を重点的に解説しました。プログラムやUiPathをある程度触ったことがある方にとっては、やや基礎的な内容かもしれませんが、RPAに興味を持ち自動化処理を作成したい方に少しでも参考になれば幸いです。

さいごに

TISでは、UiPathの導入から運用後の課題解決まで、現場に寄り添ったサポートを行っています。今回ご紹介した内容以外にも、実際の現場で得られた知見が多数ございますので、ご関心があればぜひご相談ください。

執筆者:永岡 隼風

※本コラムはTISエンジニアの実体験・知見に基づく内容を記載していますが、記載された情報や手順が全ての環境で同様に動作することを保証するものではありません。万が一、本コラム内容を参考にしたことによる損害等が生じた場合、当社は責任を負いかねますのでご了承ください。また、記載されている情報はコラム公開時点のものであり、予告なく変更される場合があります。

お問い合わせ

<TISの[RPA業務自動化ソリューション:UiPath]について確認する>

PAGE TOP

サービスに関する資料をご希望の方は、フォームに必要事項を入力いただき、ご送信ください。

資料を請求する

お問い合わせ
各種お問い合わせページ
お問い合わせフォーム
サービスに関するお問い合わせ
お電話
0800-600-9810
携帯電話
050-5816-9805
受付時間 9:00~12:00 13:00~17:00(土・日・祝日を除く)
#6 現場のIT初心者が教える!UiPath RPAのつまずきポイントと乗り越え方-TIS Direct Web
#6 現場のIT初心者が教える!UiPath RPAのつまずきポイントと乗り越え方のページです。TIS Direct Webではお客様の最適なパートナーとして様々なITソリューションを提供しています。業種やキーワードなどからお客様に最適なソリューションをご紹介。また実際のITソリューションのケーススタディ・事例も豊富にご紹介しています。#6 現場のIT初心者が教える!UiPath RPAのつまずきポイントと乗り越え方のご相談ならTIS Direct Webにおまかせ下さいませ。

更新日時:2025年12月5日 14時50分