JobAutoでWebサイトのデータをExcelへ転記するロボットを作成|総合講習

★ページの説明・概要

JobAutoを使用して、Webサイトから取得したデータを Excelへ順番に貼り付けるロボットを作成します。

この講習は、アクション作成編2のまとめです。 これまで学習したブラウザ操作、繰り返し処理、 変数の加工、Excel操作などを組み合わせて、 一連の処理を行うロボットを作成します。

最終的には、Webサイトから取得した値を Excelへ転記し、実行した日付を使用した ファイル名で保存します。

この講習で学べること

  • Excelの新規作成と保存
  • ブラウザの起動とWebページの表示
  • ブランチを使用した処理フローの作成
  • Webページ内の要素の繰り返し処理
  • Webページからの値取得と変数への格納
  • 変数を加工したExcelの貼り付け位置の制御
  • 取得した値のExcelへの入力
  • 実行日を使用したファイル名での保存

演習で作成するロボット

以下のWebページからデータを取得して、 Excelへ貼り付けます。

データ取得対象となるWebページ

以下のようなロボットを作成します。

WebページからExcelへ転記するロボット全体のアクションフロー

ロボットの作成手順

1.Excelを新規作成する

最初に、取得したデータを貼り付けるための Excelブックを新規作成します。

Excelを新規作成するアクションフロー

Excelの新規作成アクションを設定します。

Excel新規作成アクションの設定画面

2.ブランチを追加する

続いて、ブランチを追加します。

ブランチを追加したアクションフロー

3.ブラウザを起動してWebページを開く

ブラウザを起動し、 本マニュアルサイトのトップページを開きます。

マニュアルサイトを開くアクションフロー

ブラウザを起動するアクションを設定します。

ブラウザ起動アクションの設定画面

次に、ページを開くアクションを設定します。

ページを開くアクションの設定画面

4.学習コンテンツのページを開く

学習コンテンツの「アクション作成編」を開きます。

アクション作成編を開くためのアクションフロー

マウス操作アクションを設定します。

マウス操作アクションの設定画面

5.要素のループを設定する

要素のループアクションを使用して、 Webページ内の要素を順番に処理します。

要素のループを追加したアクションフロー

要素のループアクションでは、 開始行を2行目からに設定しています。

要素のループで開始行を2行目に設定する画面

6.Webページから値を取得する

Webページに表示されている値を取得します。

Webページから値を取得するアクションフロー

値の取得アクションを設定します。 表示されているテキストを取得し、 変数へ格納します。

表示テキストを取得して変数へ格納する設定

7.ブランチを追加する

続いて、ブランチを追加します。

値取得後のブランチを追加したアクションフロー

8.Excelへの貼り付け位置を加工する

変数の値を加工するアクションを使用して、 Excelへの貼り付け位置を加工します。

Excelへの貼り付け位置を加工するアクションフロー

変数の値を加工するアクションでは、 Excelの貼り付け位置となる行番号を加工し、 変数へ格納します。

Excelの貼り付け先行番号を変数で加工する設定

9.取得した値をExcelへ入力する

Webページから取得した値をExcelへ入力します。

Excelへ値を入力するアクションフロー

値の入力アクションでは、 行番号に手順8で使用した変数を設定します。

入力する値には、 手順6で取得した値を格納した変数を使用します。

行番号と入力値にそれぞれ変数を使用するExcel値入力設定

10.ブランチを追加する

続いて、ブランチを追加します。

Excelへの値入力後にブランチを追加したアクションフロー

11.Excelを実行日付きのファイル名で保存する

最後にExcelを保存します。

アクションを実行した日付を取得し、 保存先のフォルダ名やファイル名と組み合わせて、 保存先を指定します。

Excelを日付付きファイル名で保存するアクションフロー
実行日を使用したExcel保存先の設定画面

講習用ロボットのダウンロード

この講習で使用するサンプルロボットを ダウンロードできます。

ダウンロードしたロボットを JobAutoのロボデザインへインポートすると、 Webページからの値取得、 Excelへの転記、ファイル保存までの アクション構成や設定内容を確認できます。

ロボットはこちらからダウンロードできます。

関連するJobAutoのマニュアル

ブラウザ操作、Excel操作、変数の加工など、 各アクションの詳しい設定方法については、 次のマニュアルをご確認ください。

次の学習へ進む

これで、アクション作成編2の講習は終了です。

ブラウザからの値取得、 繰り返し処理、変数の加工、 Excelへの入力・保存を組み合わせた ロボットの作成方法を学びました。

次は、作成したロボットを RoboWebから実行する方法を学びましょう。

次の講習へ:4.ロボット実行編

前へ:3-16.最新のファイルだけ処理を行う

アクション作成編2の目次へ戻る

JobAutoでフォルダ内の最新ファイルだけを取得する方法

★ページの説明・概要

JobAutoを使用して、 フォルダ内にある最新のファイルを 1件だけ取得する方法を紹介します。

フォルダ内に複数のファイルがある場合、 更新日付が最も新しいファイルだけを 処理対象にしたいことがあります。

この講習では、 「ファイルの繰り返し処理」アクションで ファイルを更新日付の降順に並び替え、 取得件数を1件に設定する方法を学びます。

この講習で学べること

  • フォルダ内のファイルを取得する
  • 更新日付が新しい順にファイルを並び替える
  • 取得するファイル数を1件に制限する
  • 取得したファイルのパスを変数へ格納する

最新のファイルだけを取得する方法

1.処理対象のファイルを確認する

フォルダ内に複数のファイルが 保存されている場合に、 最新のファイルだけを処理する ロボットを作成します。

最新のファイルを取得する処理の説明画像

2.ファイルの並び替えを設定する

「ファイルの繰り返し処理」アクションで、 対象のフォルダを指定します。

並び替えの設定は、 「更新日付の降順」 を選択します。

これにより、更新日付が新しいファイルから 順番に処理対象になります。

3.取得するファイル数を1件にする

「取得するファイル数」を 「1」に設定します。

更新日付の降順に並び替えた状態で 取得件数を1件にすることで、 最新のファイルだけが処理対象になります。

更新日付の降順と取得するファイル数1件の設定画面

4.ファイルパスを変数へ格納する

取得した最新ファイルのパスは、 指定した変数へ格納します。

格納したファイルパスを使用することで、 後続のアクションで対象ファイルを 指定できます。

講習用ロボットのダウンロード

この講習で使用するサンプルロボットを ダウンロードできます。

ダウンロードしたロボットを JobAutoのロボデザインへインポートすると、 最新のファイルを取得するための アクション構成や設定内容を確認できます。

ロボットはこちらからダウンロードできます。

関連するJobAutoのマニュアル

ファイルの並び替えや取得件数、 ファイルパスを格納する変数などの 詳しい設定方法については、 次のマニュアルをご確認ください。

次の学習へ進む

フォルダ内にある最新のファイルを 1件だけ取得する方法を理解したら、 次はこれまでに学んだ操作を組み合わせる まとめ講習へ進みましょう。

次へ:3-17.まとめ1

前へ:3-15.ページをまたがって繰り返し処理を行う

アクション作成編2の目次へ戻る

JobAutoで複数ページの検索結果を繰り返し取得する方法

★ページの説明・概要

JobAutoを使用して、 複数ページに分かれて表示される検索結果から、 各ページのデータを順番に取得する方法を紹介します。

検索結果が複数ページに分かれている場合、 1ページ目のデータを取得するだけでは、 すべてのデータを取得できません。

この講習では、「次頁」リンクのクリックと 「ブックマークへジャンプ」を組み合わせ、 次のページがなくなるまで データ取得を繰り返す方法を学びます。

この講習で学べること

  • 複数ページに分かれた検索結果から値を取得する
  • 「次頁」リンクをクリックして次のページへ進む
  • ブックマークを使用して同じ処理を繰り返す
  • 最終ページで繰り返しを終了する

ページをまたがる繰り返し処理の作成方法

1.処理対象のWebページ

以下のように検索結果が複数ページに 分かれて表示されている場合、 各ページからデータを取得するには どうしたらよいでしょうか。

複数ページに分かれた検索結果の表示例

検索結果によってページ数が異なるため、 「次頁」リンクをクリックできる間は 処理を繰り返すフローを作成します。

2.アクションフローを作成する

作成したアクションフローは以下のとおりです。

ページをまたいでデータ取得を繰り返すJobAutoのアクションフロー

3.次のページへ移動する

表示中のページから値を取得したら、 「次頁」リンクをクリックします。

「次頁」をクリックすると、 Webページに次の検索結果が表示されます。

検索結果の次頁リンクをクリックするアクション

4.ブックマークへジャンプする

次に「ブックマークへジャンプ」を実行し、 指定したブックマークへ処理を戻します。

これにより、 次のページに表示されたデータに対しても、 同じ取得処理を実行できます。

ブックマークへジャンプしてデータ取得処理へ戻る設定

5.最終ページで繰り返しを終了する

検索結果の最後のページでは、 「次頁」リンクが見つからず、 クリックアクションがエラーになります。

このとき、エラー発生時の対応を 「後続処理をしない」に設定しておくことで、 「ブックマークへジャンプ」を実行せず、 繰り返しを抜けて後続の処理へ進みます。

これにより、 検索結果のページ数が毎回異なる場合でも、 次のページがなくなるまで データ取得を繰り返せます。

講習用ロボットのダウンロード

この講習で使用するサンプルロボットを ダウンロードできます。

ダウンロードしたロボットを JobAutoのロボデザインへインポートすると、 ページをまたぐ繰り返し処理の アクション構成や設定内容を確認できます。

ロボットはこちらからダウンロードできます。

関連するJobAutoのマニュアル

ブックマークへのジャンプや、 アクションのエラー発生時の対応など、 詳しい設定方法については 次のマニュアルをご確認ください。

次の学習へ進む

複数ページに分かれた検索結果から データを繰り返し取得する方法を理解したら、 次はフォルダ内にある最新のファイルだけを 処理する方法を学びましょう。

次へ:3-16.最新のファイルだけ処理を行う

前へ:3-14.メーラを使ってメール送信する

アクション作成編2の目次へ戻る

JobAutoでブラウザの要素が見つからないときの設定方法|XPath・要素指定のコツ

JobAutoでブラウザの要素が見つからない場合の確認方法

JobAutoのブラウザ操作で、 操作したいボタンや入力欄などの要素が見つからない場合や、 目的とは違う要素を操作してしまう場合の 設定方法について説明します。

ブラウザアクションでは、 XPath、Attribute、Value、テキストパターン、 要素のインデックスなどの情報を使って 操作対象となるWebページの要素を指定します。

Webサイトの構成によっては、 アクションを作成したときは正常に動いても、 テストやスケジュール実行では 要素を見つけられなくなる場合があります。

また、 同じ文字や似た構造の要素が複数存在する場合は、 目的とは違う場所へフォーカスが当たることがあります。

このページでは、 「要素にフォーカス」による確認、 再フォーカスによる操作対象の再設定、 テキストパターン、class、XPath、 要素のインデックスなどを使って、 ブラウザの操作対象を安定して指定するためのポイントを説明します。

focus

再フォーカスで操作する要素を設定し直す

アクションの編集画面を開いた状態で、ブラウザ上の操作したい場所を選択すると、操作対象を設定し直すことができます。

ブラウザ内で対象を選択して右クリックし、再フォーカスを使って操作する要素を再設定してください。

refocus

テキストパターンで要素を指定する

画面上に表示されている文字を使って、操作する要素を指定することもできます。 ボタン名やリンクの文字などを利用できる場合は、テキストパターンを使って要素を指定します。

Webサイトによっては、テキストパターンを設定した直後は正常に動いても、ロボットをテストすると要素が見つからずエラーになる場合があります。

その場合は、テキストパターンに設定している文字の前へ「.*」を付けることで正常に動作する場合があります。

たとえば、画面上の「ログイン」という文字を使っている場合は、次のように設定します。

textpattern

classは必要な場合だけ使用する

ブラウザアクションを作成したとき、Attributeに「class」が自動的に設定される場合があります。

classはWebページのデザインや表示を制御するためにも利用されるため、Webサイト側の変更によって値が変わることがあります。 そのため、classを使わなくても対象を特定できる場合は、classを空欄にして設定する方法も検討してください。

class

IDが変わるWebサイトではXPathの設定を確認する

操作対象のHTMLにIDが設定されている場合、JobAutoではIDを使ったXPathが設定されることがあります。

同じ画面でもアクセスするたびにIDが変化するWebサイトでは、作成時のXPathをそのまま使用すると、次回実行時に要素を見つけられなくなる場合があります。

IDが頻繁に変わるWebサイトでは、ID付きのXPathを利用する設定を外して要素を指定する方法を検討してください。

is_xpath

実行するたびにXPathが変わる場合

Webページの構造によっては、ロボットを作成したときと実行したときで、要素の位置を表すXPathが変わることがあります。

たとえば、作成時のXPathが次のようになっていたとします。

//*[@id="testdayo"]/div/div[2]/div[6]/img

別のタイミングで実行すると、次のように要素の位置が変わることがあります。

//*[@id="testdayo"]/div/div[2]/div[8]/img

この場合、位置を固定している「div[6]」や「div[8]」の部分を使わず、次のようなXPathにすることで、位置の変化を吸収できる場合があります。

//*[@id="testdayo"]/div/div[2]/div/img

Webページの構造に応じて、実行するたびに変わる部分をXPathから外せないか確認してください。


同じ要素が複数ある場合はインデックスを変更する

同じ文字のボタンが複数表示されている場合や、同じ条件に一致する要素が複数存在する場合は、JobAutoが操作したい場所以外の要素を選択することがあります。

その場合は、アクションの「高度な設定」にあるインデックスを変更して、何番目の要素を操作するか指定します。

インデックスを変更した後は、「要素にフォーカス」を実行し、実際に操作したい場所へフォーカスが当たることを確認してください。


「要素が見つかりません」となる場合

ブラウザアクションを実行したときに 「要素が見つかりません」となる場合は、 まずアクション設定画面の 「要素にフォーカス」を使用してください。

現在の設定内容で JobAutoが操作対象となる要素を認識できるか確認します。

目的の要素へフォーカスが当たらない場合は、 XPath、テキストパターン、 Attribute、Valueなど、 操作対象を特定するための設定を確認します。

作成したときは動いたのに実行すると失敗する場合

アクションを作成したときは正常に動いたにもかかわらず、 テストやスケジュール実行で 要素を見つけられなくなる場合があります。

この場合は、 Webページを表示するたびに 操作対象のHTMLやXPathの一部が 変化していないか確認してください。

また、 テキストパターン、class、ID付きXPathなど、 Webサイトの変更によって値が変わりやすい条件を 要素指定に使用していないか確認します。

目的とは違うボタンや入力欄を操作する場合

アクションを実行すると 目的とは違う場所をクリックしたり、 違う入力欄へ値を入力したりする場合は、 現在の設定に一致する要素が Webページ内に複数存在している可能性があります。

まず「要素にフォーカス」を使用し、 実際にどの要素へフォーカスが当たるか確認してください。

同じ条件の要素が複数見つかる場合は、 「要素のインデックス」を使って 操作する要素を指定します。

操作対象そのものを変更したい場合

既存のブラウザアクションについて、 現在設定されている要素とは別の場所を 操作対象に変更したい場合は、 再フォーカスを使用します。

アクションの編集画面を開いた状態で ブラウザ上の新しい操作対象を選択し、 右クリックして操作箇所を再設定します。

操作対象の再設定については、 JobAutoでブラウザアクションの操作対象を再設定する方法 も確認してください。

要素の繰り返し処理の中だけうまく動かない場合

通常のブラウザ操作では正常に動くのに、 「要素の繰り返し処理」の中では 目的の場所を操作できない場合は、 繰り返し範囲と要素指定の関係も確認してください。

要素の繰り返しでは、 処理対象となる範囲やXPathの設定によって、 ロボットが探す要素が変わります。

要素の繰り返しを安定して設定する方法については、 要素の繰り返しの便利な使い方 も確認してください。

Webページの要素にフォーカス自体が当たらない場合

操作対象をクリックしても JobAutoのフォーカスを示すピンクの四角が 表示されない場合は、 このページで説明している XPathやインデックスの調整とは 別の原因である可能性があります。

ChromeやEdgeでは、 Webサイトによって 通常の要素指定方法ではフォーカスが当たらない場合があります。

この場合は、 ブラウザの要素指定方法を 「手動設定」へ変更する方法を確認してください。

詳しい方法については、 JobAutoでブラウザの要素にフォーカスが当たらない場合の対処方法 を確認してください。

フォーカスは当たるが右クリックメニューが出ない場合

操作したい要素にはフォーカスが当たっているものの、 右クリックしても JobAutoのアクション選択メニューが表示されない場合は、 要素の指定方法とは別の問題です。

この場合は、 ChromeやEdgeのDevToolsからXPathを取得し、 ブラウザアクションへ手動設定する方法があります。

詳しい方法については、 JobAutoで右クリックメニューが出ずブラウザアクションを追加できない場合 を確認してください。

右クリックするとWebサイト側のメニューが消える場合

Webサイトのプルダウンやメニューを表示した状態で 操作対象を右クリックすると、 そのメニュー自体が消えてしまう場合があります。

これは、 JobAutoの右クリックメニューが表示されない問題とは 別のケースです。

この場合は、 Ctrl+Shift+F2キーを使用して XPathの一覧から操作対象を選択する方法を確認してください。

詳しい方法については、 右クリックしてメニューを表示できない場合は? を確認してください。

ブラウザの要素指定で困った場合の確認順序

  1. 「要素にフォーカス」を使って、現在の設定でどこが選択されるか確認する
  2. 目的の要素が選択されない場合は、XPathやテキストパターンなどの設定を確認する
  3. Webサイトの表示ごとに変化するclassやID、XPathを使用していないか確認する
  4. 同じ条件の要素が複数ある場合は「要素のインデックス」を確認する
  5. 操作対象そのものを変更する場合は再フォーカスを行う
  6. 要素の繰り返し内の場合は、繰り返し範囲やXPathも確認する
  7. フォーカス自体が表示されない場合は、ブラウザの要素指定方法を確認する
  8. フォーカスは当たるが右クリックメニューが出ない場合は、XPathの手動設定方法を確認する
  9. 右クリックするとWebサイト側のメニューが消える場合は、Ctrl+Shift+F2を使う方法を確認する

関連するブラウザ操作・FAQ

リリースノート – 0.10.1 (2019-12-02)

JobAuto 0.10.1(2019年12月2日)のリリースノートです。変数の右クリック操作、Excel最終行の取得、ブラウザ起動時の設定、アプリ操作の要素認識やROBOWEBの変更内容など、機能追加・機能修正・不具合修正を掲載しています。

本ページはリリース当時の変更履歴を記録したものです。各変更内容は当時の機能分類に従って掲載しています。

機能追加

ロボデザイン

  • 変数一覧の変数を右クリックメニューにメニューを追加。「クリアする、初期に戻す、値をセットする、使用しているアクションを確認する」を追加しました

エクセル操作

  • エクセル操作、最終行のセルのアドレス取得機能を追加しました

変数

  • 値の加工アクション、関数に乱数生成を追加しました

ROBOWEB

  • スケジュールの設定へ機能を追加。同一PCでロボットが実行中の場合、終了までまつ機能を追加しました

機能修正

ロボデザイン

  • ROBO_DESIGNのアイコンをカラー化しました

ブラウザ操作

  • ブラウザの起動アクションにページロードタイムアウトを追加しました
  • 値入力アクションにて、クリック、クリア後、値入力までの待ち時間を追加しました
  • ブラウザを起動アクションのプロファイルのPathを変数設定可能にしました

アプリ操作

  • アプリの接続アクションの処理速度を改善しました
  • 要素特定全般の精度を大幅に改善しました
  • 要素特定全般の処理速度をやや改善しました
  • 中断時にすぐ処理を停止するようにしました
  • 0.10.1の本バージョンからアプリ操作の要素指定方法を変更しました。advancedエリアにバージョンを追加しました
  • アプリの値入力アクションの文字間のwaitを0.05から0.1に変更しました
  • アプリ操作の要素選択時、要素が重なっている場合に選択できません。クリックするたびに選択要素を変えるように修正しました

ROBOWEB

  • adminはすべてのプロジェクトに参加されるように修正しました

バグフィックス

ロボデザイン

  • エラーハンドリングを条件分岐の次の枝に移動にした場合に不具合がありました。アクションを開いた段階で条件分岐名が消えている不具合を修正しました
  • エラー発生時の対応で、条件分岐の次のフローに移動を選択したときに不具合がありました。基点がクリアされる不具合を修正しました

エクセル操作

  • エクセル保存アクションで不具合がありました。開いているファイルと同一名で保存しようとしたとき、保存に失敗します。そしてエクセルが削除されてしまう不具合を修正しました

アプリ操作

  • アプリ操作、キー送信と値入力アクションで不具合がありました。要素のアクティブチェックがついてないのに、無条件でアクティブにするようになっていた不具合を修正しました

ROBOWEB

  • ROBO_WEB、プロジェクトメンバー編集画面の保存時、ユーザーの紐づけが解除される不具合を修正しました

関連情報

JobAutoで指定した画像が消えるまで待つ方法

★アクションの説明、概要

JobAutoで指定した画像がアプリ画面から消えるまで、 ロボットの処理を待機させる方法について説明します。

「画像が消えるまで待つ」アクションでは、 アプリデザインで待機条件となる箇所を画像として指定し、 その画像が画面内から消えるまで処理を一時停止します。

処理中を示す表示など、 特定の画像が表示されなくなったことを確認してから 次のアクションへ進みたい場合に使用します。


★アクションの作成方法


★アクションの設定画面について

アクション設定画面の設定項目について説明します。「画面を読み込み」「操作対象にフォーカス」「背景色」については、アプリデザインの使い方をご確認ください。

1.基本設定

1-1.画像が見つかるまでのタイムアウト(秒)

設定した時間まで、指定した画像をロボットが探し続けます。

1-2.判定方法

指定した画像をロボットが探しに行くときの判定方法を設定します。こちらでも説明しています

・見た目で判定

指定した画像の見た目を使って、画面上から画像を探します。

・特徴で判定

指定した画像の特徴を使って、画面上から画像を探します。

1-3.画像一致率

指定した画像とアプリ画面上の画像を、どの程度一致したときに同じ画像と判定するか設定します。一致率を高くすると判定は厳しくなります。対象画像が表示されているのに見つからない場合は、設定値が高すぎないか確認してください。画像一致率の右側には、現在の一致率が%で表示されます。

1-4.この範囲で探す(範囲指定方法)

指定した画像を探す範囲を設定します。デフォルトでは接続中のアプリ全体から探します。

・座標

接続中のアプリ全体から探す範囲を座標で設定します。

・比率

接続中のアプリ全体から探す範囲を比率で設定します。

・全体

接続中のアプリ全体から探します。


2.高度な設定

2-1.アクション有効

このアクションを無効にする場合は、チェックを外します。


3.エラー発生時の対応

3-1.エラー時の処理

エラーが発生したときの設定を行います。詳細はこちらをご確認ください。

3-2.基点となる条件分岐

エラー時の処理で条件分岐の次のフローに移動を選択したときに、設定することができます。アクションでエラーが発生した場合、移動先の条件分岐を選択します。

3-3.エラー時にログ出力

エラーが発生したときにログに出力するか設定します。スケジュール実行したときのログへ出力されます。エラーとして扱わない場合は、チェックを外します。詳細はこちらをご確認ください。


「画像が消えるまで待つ」とは

「画像が消えるまで待つ」では、 あらかじめ指定した画像がアプリ画面内から消えるまで、 ロボットの処理を一時停止します。

指定した画像が表示されなくなったことを確認してから、 次のアクションへ進みたい場合に使用します。

「画像が出るまで待つ」と「画像が消えるまで待つ」の違い

どちらも画像マッチングを使って 処理を待機するアクションですが、 待機を終了する条件が異なります。

アクション待機する条件
画像が出るまで待つ指定した画像が画面内に表示されるまで待ちます。
画像が消えるまで待つ指定した画像が画面内から消えるまで待ちます。

「何かが表示されたら次へ進む」のか、 「何かが表示されなくなったら次へ進む」のかによって 使い分けます。

決まった時間待つ場合との違い

「画像が消えるまで待つ」は、 単純に一定時間だけ処理を停止するアクションではありません。

指定した画像を画面上から探しながら、 その画像が表示されなくなるのを待ちます。

処理時間が毎回一定ではなく、 特定の表示が消えたことを 次の処理へ進む目安にしたい場合などに使用できます。

画像の判定方法を設定する

「判定方法」では、 待機対象として指定した画像を どの方法で探すか設定します。

判定方法内容
見た目で判定指定した画像の見た目を使って画面上から探します。
特徴で判定指定した画像の特徴を使って画面上から探します。

画像の有無を正しく判定できない場合は、 判定方法が対象画像に合っているか確認してください。

画像一致率を確認する

「画像一致率」では、 指定した画像とアプリ画面上の画像を どの程度一致したときに同じ画像と判定するかを設定します。

一致率を高くすると判定の正確性は高くなりますが、 設定を厳しくしすぎると、 対象画像が実際には表示されていても 画像がないと判定される場合があります。

現在の一致率も表示されるため、 実際の認識状態を確認しながら設定してください。

画像を探す範囲を指定する

「この範囲で探す」では、 待機対象となる画像を検索する範囲を設定できます。

デフォルトでは、 接続中のアプリ全体から指定した画像を探します。

範囲指定方法内容
座標接続中のアプリ内の検索範囲を座標で指定します。
比率接続中のアプリ内の検索範囲を比率で指定します。
全体接続中のアプリ全体から画像を探します。

同じような画像が画面内の別の場所にも表示される場合は、 画像を探す範囲を限定できないか確認してください。

画像を探す時間を確認する

「画像が見つかるまでのタイムアウト(秒)」では、 設定した時間まで指定した画像を探し続けます。

対象となるアプリの処理や画面表示に時間がかかる場合は、 タイムアウト時間の設定も確認してください。

画像が消えたと判定されない場合

指定した画像が消えたあとも 想定どおり次の処理へ進まない場合は、 画像マッチングの設定を確認してください。

また、 画像がまだ表示されているのに 消えたものとして処理が進むように見える場合も、 画像を正しく認識できているか確認してください。

確認するときは、 次の点を見直してください。

  1. 操作対象となるアプリへ正しく接続しているか
  2. アプリデザインに最新の画面が表示されているか
  3. 待機条件として指定した画像が実際の画面と合っているか
  4. 「見た目で判定」と「特徴で判定」のどちらが対象画像に適しているか
  5. 画像一致率が厳しすぎないか
  6. 「この範囲で探す」の検索範囲が正しいか
  7. 対象画面の処理に時間がかかる場合はタイムアウト時間が適切か

画像マッチングの判定方法や画像一致率については、 「【画像】マウス操作」の説明もあわせて確認してください。

関連するアプリ操作・FAQ

JobAutoで使用できるシステム値一覧

JobAutoで使用できるシステム値について説明します。

システム値を使用すると、ロボットの実行日・実行日時・曜日・現在表示しているWebサイトのURL・ロボット名・ループ回数など、実行時の情報を取得できます。

システム値は、「変数の値を加工」の値セットや、SELECT・EXECUTEのSQLなど、システム値に対応している設定項目で使用できます。

使用できるシステム値は以下のとおりです。

キーボード

ENTER

Enterキーに相当する改行を設定します。変数の値に改行を入れたい場合に使用します。

TAB

Tabキーに相当するタブ文字を設定します。変数の値にタブ区切りを入れたい場合に使用します。

時刻関係

%%TODAY%%

ロボットを実行している日付を取得します。

%%NOW%%

ロボットを実行している現在日時を取得します。

フォーマット関係

%%年月日%%

ロボットの処理を実行している日を取得します

%%時分秒%%

ロボットの処理を実行している時刻を取得します

%%年%%

ロボットの処理を実行している年を取得します

%%月%%

ロボットの処理を実行している月を取得します

%%日%%

ロボットの処理を実行している日を取得します

%%時%%

ロボットの処理を実行している時を取得します

%%分%%

ロボットの処理を実行している分を取得します

%%秒%%

ロボットの処理を実行している秒を取得します

%%年月日時分秒%%

ロボットの処理を実行している年月日時分秒を取得します

%%曜日(和)%%

ロボットの処理を実行している曜日(月~日)を取得します

%%曜日(数)%%

ロボットを実行している曜日に対応する数値を取得します。月曜日の場合は「0」を取得します。

ログ関係

%%LOG_HEADER%%

処理中のロボットが出力したログの概要を取得します。

%%LOG_DETAIL%%

処理中のロボットが出力したログの詳細を取得します。

%%USER_LOG%%

ロボットで出力するように設定したユーザーログを取得します。

その他のシステム値

%%CURRENT_URL%%

ロボットがブラウザで現在表示しているWebサイトのURLを取得します。

%%ERROR_COUNT%%

ロボットの処理中に発生したエラー件数の合計を取得します。

%%DOWNLOAD_FOLDER_PATH%%

Webサイトからファイルをダウンロードするときのデフォルト保存先フォルダのパスを取得します。

%%PROJECT_NAME%%

実行中のロボットが所属しているプロジェクト名を取得します。

%%ROBOT_NAME%%

実行中のロボット名を取得します。

%%LOOP_COUNT%%

要素のループなどの繰り返し処理で、現在が何回目の繰り返しかを取得します。

%%実行時間秒%%

ロボットが処理を開始してからの経過時間を秒で取得します。

%%実行時間分%%

ロボットが処理を開始してからの経過時間を分で取得します。

%%実行時間_時分秒%%

ロボットが処理を開始してからの経過時間を時分秒形式で取得します。


システム値を使用する方法

システム値に対応している設定項目では、使用したいシステム値を指定することで、ロボット実行時の情報を取得できます。

たとえば、「%%TODAY%%」を使用すると実行日、「%%NOW%%」を使用すると実行日時、「%%ROBOT_NAME%%」を使用すると実行中のロボット名を取得できます。

取得したシステム値は、変数へセットしたり、対応しているアクションの設定値として使用したりできます。

また、SELECTやEXECUTEの「SQL」など、システム値の使用に対応している設定項目でも利用できます。

システム値を使用するときの注意点

使用できるシステム値は、設定するアクションや項目によって異なる場合があります。

システム値を設定する場合は、その設定項目がシステム値の使用に対応していることを確認してください。

また、日時、現在表示しているWebサイトのURL、ループ回数、実行時間などの値は、ロボット実行時の状態によって変わります。

システム値を後続の処理で使用する場合は、どのタイミングで取得される値なのかを確認したうえで使用してください。

関連するシステム値・変数操作

【変数の値を加工】文字列関数一覧

変数の値を加工アクション内の文字操作で使用できる関数の一覧とそれぞれの機能は以下の通りです。

Mid

文字列から文字を切り出します。
開始位置・・・文字列から切り出す開始位置を設定します。変数参照できます
文字数・・・開始位置から切り出す文字の数を設定します。変数参照できます

Left

文字列から文字を切り出します。
文字数・・・文字列の左から切り出す文字の数を設定します。変数参照できます

Right

文字列から文字を切り出します。
文字数・・・文字列の右から切り出す文字の数を設定します。変数参照できます

Ltrim

文字列の左側のスペースを削除します

Rtrim

文字列の右側のスペースを削除します

Trim

文字列の左右のスペースを削除します

Find

文字列から文字を検索し、見つかった場所を取得します。
検索する文字・・・文字列の左から検索する文字を指定します。指定した文字を左から探し、あった場合は左から何番目にあるかを取得できます。変数参照できます
例)RPAツールという文字列から「P」を検索した場合、実行結果は1となります

Rfind

文字列から文字を検索し、見つかった場所を取得します。
検索する文字・・・文字列の右から検索する文字を指定します。指定した文字を右から探し、あった場合は左から何番目にあるかを取得できます。変数参照できます
例)RPAツールという文字列から「P」を検索した場合、実行結果は1となります

Length

文字列の長さを取得します

ディレクトリパス取得

ファイルパスからフォルダ名だけを取得します

ファイル名取得

ファイルパスからファイル名だけを取得します

乱数生成

文字長・・・乱数で作成する文字の長さを指定します
含める文字の種類・・・乱数で作成しる文字列内に含める文字の種類を指定します
>数字
数字です
>大英字
大文字の英字です
>小英字
小文字の英字です
>記号
記号です。!#$%*+-./=?@_が使用されます

JobAutoで開いているすべてのExcelを強制終了する方法

★アクションの説明、概要

JobAutoで開いているすべてのExcelを まとめて閉じる方法について説明します。

「エクセルを強制終了する」アクションを実行すると、 特定のブックを指定するのではなく、 開いているすべてのExcelを終了します。

特定のExcelブックだけを閉じたい場合は、 「エクセルを閉じる」アクションを使用します。

また、Excel操作を開始する前に 「エクセルを強制終了する」を実行しておくことで、 前回の処理などでExcelが残っていることによる ブックインデックスのずれを防ぐ方法もあります。

このページでは、 Excelを強制終了する方法と、 通常の「エクセルを閉じる」との違い、 Excel操作前に使用する場合の考え方について説明します。


★アクションの作成方法


★アクションの設定画面について

アクション設定画面の設定項目についての説明は以下の通りです。

1.基本設定

設定する内容はありません。


2.高度な設定

2-1.アクション有効

このアクションを無効にする場合は、チェックを外します。


3.エラー発生時の対応

3-1. エラー時の処理

エラーが発生したときの設定を行います。詳細はこちらをご確認ください。

3-2.基点となる条件分岐

エラー時の処理で条件分岐の次のフローに移動を選択したときに、設定することができます。アクションでエラーが発生した場合、移動先の条件分岐を選択します。

3-3. エラー時にログ出力

エラーが発生したときにログに出力するか設定します。スケジュール実行したときのログへ出力されます。エラーとして扱わない場合は、チェックを外します。詳細はこちらをご確認ください。


開いているすべてのExcelを閉じる場合

「エクセルを強制終了する」は、 開いているExcelをすべて終了するときに使用します。

操作対象となるブック名や ブックインデックスを指定する必要はありません。

特定のExcelだけを閉じたい場合は、 「エクセルを閉じる」アクションを使用してください。

Excel操作を開始する前に強制終了する場合

ロボットの実行前からExcelが開いたままになっていると、 ロボットがExcelを開いたときの ブックインデックスが想定とずれる場合があります。

JobAutoでは、 Excel操作を行う前に 「エクセルを強制終了する」アクションを実行してから Excelの新規作成や「エクセルを開く」を実行する方法があります。

処理開始時に開いているExcelを終了しておくことで、 ロボット実行時のExcelの状態をそろえやすくなります。

「エクセルを閉じる」と「エクセルを強制終了する」の違い

やりたいこと 使用するアクション
指定したExcelブックだけを閉じる エクセルを閉じる
開いているすべてのExcelをまとめて閉じる エクセルを強制終了する

特定のExcelブックを 名前またはインデックスで指定して閉じる場合は、 JobAutoでExcelファイルを閉じる方法 を確認してください。

Excelを保存してから終了する場合

「エクセルを強制終了する」は、 Excelを保存するためのアクションではありません。

ロボットで編集したExcelを ファイルとして保存する処理が必要な場合は、 「エクセルを保存」アクションを使用してから、 必要に応じてExcelを終了する流れにします。

Excelの保存方法については、 JobAutoでExcelファイルを保存する方法 を確認してください。

ブックインデックスのずれを防ぎたい場合

Excel操作では、 ブックをインデックスで指定するアクションがあります。

ブックインデックスは ロボットがExcelを開いた順番によって決まるため、 ロボット実行前から別のExcelが開いているなど、 作成時と実行時でExcelの状態が異なると 想定したブックを操作できない場合があります。

このような場合は、 処理の最初に「エクセルを強制終了する」を実行し、 そのあとで必要なExcelだけを 新規作成または開く構成を検討します。

ブックインデックスの考え方については、 JobAutoでExcelブックやシートをインデックスで指定する方法 も確認してください。

Excel操作を開始するときの基本的な流れ

  1. 必要に応じて「エクセルを強制終了する」で開いているExcelを終了する
  2. 「エクセルの新規作成」または「エクセルを開く」で操作対象のExcelを用意する
  3. 値入力・値取得など必要なExcel操作を実行する
  4. 保存が必要な場合は「エクセルを保存」を実行する
  5. 必要に応じて「エクセルを閉じる」で対象ブックを閉じる

関連するExcel操作・FAQ

JobAutoで配列の値を繰り返し処理する方法

★アクションの説明、概要

JobAutoで配列に格納されている値を 1つずつ取り出しながら、 繰り返し処理を行う方法について説明します。

「配列の繰り返し処理」アクションでは、 配列が格納されている変数を指定し、 配列内のデータを順番に取り出して処理できます。

配列から取り出した値は、 指定した変数へ格納されます。

繰り返し処理の中では、 その変数に格納された値を使って アクションを実行できます。

複数の値に対して 同じ処理を順番に実行したい場合などに使用します。


★アクションの作成方法


★アクションの設定画面について

アクション設定画面の設定項目について説明します。

1.基本設定

1-1.配列が格納されている変数

繰り返し処理の対象となる配列が格納されている変数を設定します。

1-2.配列から取り出したデータを格納する変数

配列から1つずつ取り出したデータを格納する変数を設定します。


2.高度な設定

設定する内容はありません。


3.エラー発生時の対応

3-1.エラー時の処理

エラーが発生したときの設定を行います。詳細はこちらをご確認ください。

3-2.基点となる条件分岐

「エラー時の処理」で「条件分岐の次のフローに移動」を選択した場合に設定します。アクションでエラーが発生したときの移動先となる条件分岐を選択します。

3-3.エラー時にログ出力

エラーが発生したときにログに出力するか設定します。スケジュール実行したときのログへ出力されます。エラーとして扱わない場合は、チェックを外します。詳細はこちらをご確認ください。


配列の値を1つずつ処理する場合

配列に格納されている複数の値に対して 同じ処理を繰り返したい場合は、 「配列の繰り返し処理」を使用します。

「配列が格納されている変数」で 繰り返し対象となる配列を指定します。

配列から取り出した値は、 「配列から取り出したデータを格納する変数」で 指定した変数へ格納されます。

繰り返し処理の中では、 その変数を参照して 取り出した値を使用できます。

配列の繰り返し処理の基本的な流れ

  1. 処理するデータを配列として変数へ格納します。
  2. 「配列の繰り返し処理」アクションを作成します。
  3. 「配列が格納されている変数」で、 処理対象となる配列変数を指定します。
  4. 「配列から取り出したデータを格納する変数」で、 取り出した値の格納先を指定します。
  5. 繰り返し処理の中に、 配列から取り出した値を使って実行するアクションを作成します。
  6. 配列内の値を順番に取り出しながら、 同じ処理を繰り返します。

文字列を配列にしてから繰り返す場合

処理対象が配列ではなく、 区切り文字で区切られた文字列の場合は、 先に「変数の値を加工」の 「配列に変換」を使用します。

「配列に変換」で文字列を配列へ変換した後、 作成した配列を 「配列の繰り返し処理」で処理します。

「配列に変換」と「配列の繰り返し処理」の違い

操作用途
配列に変換文字列を区切り文字で分割し、 配列として扱える状態にします。
配列の繰り返し処理配列に格納されている値を 1つずつ取り出しながら繰り返し処理します。

最初から配列として取得した値を繰り返す場合

他のアクションで取得した結果が すでに配列として変数へ格納されている場合は、 その変数を 「配列が格納されている変数」に指定できます。

たとえば、 Excelの「シート一覧の取得」で シート一覧を配列として取得した場合は、 「配列の繰り返し処理」を使って シート名を1つずつ取り出しながら処理できます。

条件に応じて現在の配列要素をスキップする場合

配列を繰り返し処理している途中で、 特定の条件に該当した値だけ 残りの処理を行わず次の値へ進みたい場合は、 「変数の値を評価」の 「次の繰り返し処理に移動する」を使用できます。

条件に応じて繰り返し処理を終了する場合

特定の条件に該当した時点で 配列の繰り返し処理自体を終了したい場合は、 「変数の値を評価」の 「繰り返し処理をやめる」を使用できます。

配列の繰り返し処理が想定どおり動かない場合の確認順序

  1. 「配列が格納されている変数」に、 配列が格納されている変数を指定しているか確認します。
  2. 処理対象の変数に、 想定した配列が格納されているか確認します。
  3. 「配列から取り出したデータを格納する変数」が 正しく設定されているか確認します。
  4. 繰り返し処理の中で、 配列から取り出した値を格納する変数を 正しく参照しているか確認します。
  5. 処理対象が文字列の場合は、 必要に応じて先に 「配列に変換」を使用しているか確認します。
  6. 条件判定によって 「次の繰り返し処理に移動する」や 「繰り返し処理をやめる」が 実行されていないか確認します。

関連する変数操作・繰り返し処理