【できるUiPath】は注目のRPAサービス「UiPath」を使って、RPAのワークフローを作るための基本操作から、実際に業務をRPA化する実践テクニックまでを解説する連載です。
過去の記事一覧【できるUiPathまとめ】
文字入力のオプション設定
思い通りに文字が入力できないときは
ブラウザーやアプリに文字を入力するとき、方法によっては、思い通りの結果が得られないことがあります。その対処方法を見てみましょう。
オプションで入力方法を選択できる
UiPath Studioには、ブラウザーやアプリに文字を入力する方法が複数用意されています。標準の設定で思い通りに入力できないときは、[文字を入力]のプロパティで入力方法を変更してみましょう。
[入力をシミュレート]を有効にする
半角カタカナが文字化けしてしまったり、IMEの状態によって入力される文字が変わったりするときは、[文字を入力]のプロパティで[入力をシミュレート]をオンにすることで、特定のトラブルを回避できます。
HINTいろいろな環境があることを想定しよう
ワークフローを作成するときは、ワークフローがどのような環境で実行されるかも想定しておく必要があります。
このレッスンの文字入力は、その良い例で、同じワークフローでも、そのときに選択されているIMEのモードによって文字が変わってしまう例を示しています。さまざまな実行環境でテストするなどして、ワークフローの完成度を高めることが大切です。
HINT3種類の入力方法の違いを確認しよう
UiPath Studioでは、どのような仕組みで文字を入力するかの違いによって、3種類の設定が用意されています。それぞれの違いは、表の通りです。
ショートカットキー操作などのホットキーを入力できるか、アプリがバックグラウンドで実行されている状態でも入力できるか、どのようなアプリにも対応できるか(互換性)、ウィンドウが操作対象として選択されている必要があるか(ウィンドウフォーカス)、入力時に入力欄を空にできるかなどの違いがあります。
メソッド | 説明 | ホットキーの入力 | バックグラウンドでの入力 | 処理速度 | 互換性 | ウィンドウフォーカスの必要性 | 入力時に入力欄を自動的に空にする |
---|---|---|---|---|---|---|---|
デフォルト | ハードウェア(Keyboard)からの入力をシミュレートする | ○ | 50% | 100% | ○ | ||
ウィンドウメッセージを送信 | Windows OSレベルでの入力をシミュレートする | ○ | ○ | 50% | 95% | ||
入力をシミュレート | アプリケーションでの対象の要素に対して入力時に、そのEventをhookし、入力をシミュレートする | ○ | 100% | 80% | ○ |
文字入力でありがちなトラブル
[文字を入力]アクティビティを使うときに、よくあるのは半角カタカナの文字化けや、IMEのモードや変換操作に関連するトラブルです。標準設定での動作を確認してみましょう。
1[文字を入力]を追加する
2入力する文字を指定する
IMEの[半角英数]モードで実行した場合
IMEの[ひらがな]モードまたは[全角英数]モードで実行した場合
HINTどうして半角スペースが消えてしまったの?
IMEが[ひらがな]モードになっている場合、スペースキーの入力は変換操作と判断されます。このため手順2では「123-456」が全角になるだけでなく、それに続く半角スペースが消えてしまうわけです。
HINTIMEを無効化するのも1つの手
[ウィンドウメッセージを送信]を有効にする
標準設定で思い通りに入力できないときは、[ウィンドウメッセージを送信]を有効にしてみましょう。IME関連のトラブルを解消できますが、半角カタカナの文字化けはそのままとなります。
1[オプション]を設定する
IMEの[半角英数]モードで実行した場合
IMEの[ひらがな]モードで実行した場合
HINT何も選択されていないのがデフォルトメソッド
[文字を入力]のプロパティでは、3種類の入力方法を選択できますが、設定は[ウィンドウメッセージを送信]と[入力をシミュレート]の2つしかありません。
つまり、何も選択されていない状態がハードウェアをシミュレートするデフォルトメソッドとなります。
HINTIMEの状態に左右されない
[ウィンドウメッセージを送信]では、指定した文字が、文字列としてそのまま入力されます。このため、実行環境でIMEの状態がどうなっているかは関係ありません。
[半角英数][ひらがな]どちらの状態でも、同じ文字が入力されます。
[入力をシミュレート]を有効にする
[入力をシミュレート]を有効にしてみましょう。アプリケーションレベルで入力がシミュレートされ、半角カタカナがそのまま入力され、IMEの状態に関係なく、指定した文字がそのまま入力されます。
1[オプション]を設定する
IMEの[半角英数]モードで実行した場合
IMEの[ひらがな]モードで実行した場合
HINTどちらか1つしか有効にできない
HINT[SecureStringで文字を入力]も同じ
ここでは、[文字を入力]の設定について解説しましたが、パスワードなどを入力するときに使う[SecureStringで文字を入力]アクティビティでも同じ設定ができます。
パスワードの場合、通常は入力結果が見えないため、エラーの原因を判断しにくいことがあります。オプションを変更して試してみましょう。
Point迷ったら[入力をシミュレート]にチェックマークを付けよう
このレッスンで説明したように、[文字を入力]では、オプションの設定によって入力結果が変わることがあります。
標準設定では、環境によってワークフローがうまく動いたり、動かなかったりすることがあるので、迷ったときは[入力をシミュレート]をクリックしてチェックマークを付けておくと安心です。
提供:UiPath