WinActorマッチング画像が存在しません。解決方法

WinActorマッチング画像が存在しません。解決方法


本日は比較的多くあるエラー”マッチングが存在しません。”
の解決方法について解説したいと思います。


  1. ディスプレイの解像度が記録時と変化した。

  2. 表示倍率が記録時と変化した。

  3. マッチ率が100%に近い設定にしている。

  4. 対象画面が表示されていない。

  5. 対象画面が改修された。

  6. その他多く問い合わせのあるエラー

以上の原因が考えられます。
一つ一つ解説します。

1.ディスプレイの解像度が記録時と変化した。

ディスプレイには解像度があります。
解像度はwindows10の場合、設定→システム→ディスプレイから調整できます。
画像マッチングは解像度変化に弱いです。


以下のようなことはあると記録時と実行時の解像度が異なる可能性があります。

その1 RPAのPCへリモート接続して実行した。

このような場合、接続元PCの解像度が基準となる為、
接続先のRPAパソコンと解像度が異なりエラーとなってしまいます。

その2 デュアルディスプレイ仕様としていて記録時はディスプレイ➀に対象ウィンドウを表示して記録したが、実行時はディスプレイ②で対象となるウィンドウが表示されている。

このパターンの方が多いかもしれません。
デュアルディスプレイ仕様の場合ディスプレイ➀と②が異なる解像度であるパターンに気おつけてくだい。

2.表示倍率が記録時と変化した。

下記はIEを起動しています。
以下のようにウィンドウ画面の表示サイズを変更することができます。
これが記録時と異なってしまうとエラーが起きやすくなります。



表示倍率はCtrl + マウススクロールで簡単に変更できます。
知らないうちに変更してしまっている可能性もあります。

対処方法としてCtrl +0をエミュレーションで画像マッチングの前に必ず入れましょう。
Ctrl +0で100%に固定できます。
つまり記録時も100%で記録し、実行時には倍率が変化している可能性を考えてCtrl +0を追加することで記録時と同じ倍率にします。

輪郭マッチングを使うという手もあります。
輪郭マッチングでは表示倍率の違いをある程度許容してくれますので
上手くいく可能性もあります。

※どうしても解像度が変わる環境で実行しなければならない場合、WinActorEyeを用いるといいかもしれません。
下記記事を参考にしてみてください。

WinActorEyeとは?その1 jsonファイル作成編


3.マッチ率が100%に近い設定にしている。

画像マッチングのプロパティにはマッチ率という設定項目があります。
80~85くらいが良いと言われています。

数値を下げることで前述した解像度、表示倍率等の多少の変化に対応できますが、逆に誤って認識する確率も上がります。
100や100に近い設定ですとそれはそれで僅かな変化にも対応せず、エラーとなってしまうため100という設定はお勧めできません。


4.対象画面が表示されていない。

このパターンも比較的多く見受けられます。
下記のトラベルをクリックしたいので画像マッチングで設定するとします。



しかしRPA実行時には下記のように画面スクロールされていて
表示されていない場合があります。
このような時もエラーとなってしまいます。



対処方法としてはエミュレーションで画面スクロールを入れたり
ウィンドウ表示変更を用いてウィンドウを最大化しておく等です。


5.対象画面が改修された。

これはしょうがない事なのですが、
対象となるwebシステム等は常に改修されています。
見た目にはわからなくても常にバージョンアップがされています。
その変化に画像マッチングではついていけず、エラーとなることもあります。

対処方法は再度設定し直すしかありません。
画像マッチングはIEモードやイベントモードで記録ができない場合に利用するというのが良いかと思います。

6.その他多く問い合わせのあるエラー

下記はマッチング画像が存在しないとは別の原因ですが
非常によく遭遇します。
あわせてご確認ください。

ウィンドウ識別名XXXXXXXに一致するウィンドウが存在しませんでした”の解決方法



以下参考書籍になります。
winactor書籍では1番かと思います。
非常によくまとまっております。