RPA・Seleniumが使いにくい現場での代替案
ExcelとQRリーダーで入力作業を減らす方法
RPA・Selenium・VBA・UI Automationが使いにくい現場で、ExcelとQRリーダーを組み合わせて入力作業を減らす考え方を整理します。QRリーダーはキーボード扱いのため多くのソフトで動きますが、条件分岐はできない点も含めて整理します。
✅ 先に結論
業務の入力作業を減らしたいとき、最初に思いつきやすいのは、 VBA、RPA、Selenium、UI Automation(UIA)、Power Automate Desktop などです。
これらは非常に強力な自動化手段です。 しかし、すべての職場・すべての業務画面で使えるとは限りません。
特に、基幹システム、古い業務アプリ、閉域環境、外部ソフト禁止の端末では、 「自動化したいのに、自動化ツールを使えない」という状況が起こります。
そのような現場では、画面を直接操作するのではなく、 Excelで入力用データを整え、QRリーダーをキーボード入力装置として使う という考え方が選択肢になります。
QRリーダーを「専用連携ソフト」ではなく「キーボード」として見るのが、この方法のポイントです。 キーボード入力を受け付ける画面であれば、Excel、Webフォーム、古い業務アプリ、リモート端末などでも動く可能性があります。 ただし、画面の状態を読み取って「Aなら処理1、Bなら処理2」のように条件分岐することはできません。
そのため、判断はExcel側のデータ作成や人間の確認に寄せ、 QRリーダーには決まった順番の入力列を流す役割を持たせるのが現実的です。
本記事では、RPA・Selenium・VBA・UIAが使いにくい現場で、 ExcelとQRリーダーを使って入力作業を減らす考え方を整理します。
1. RPA・Selenium・VBAは強力だが、現場では使えないことがある
RPA、Selenium、VBA、UI Automation(UIA)は、画面操作や入力作業を自動化する有力な方法です。
たとえば、次のような用途では大きな効果があります。
- Excelのデータを別システムに入力する
- Web画面に自動ログインして処理する
- 定型フォームに値を入力する
- ボタンを押す、画面を切り替える、結果を取得する
- 毎日・毎月の同じ作業を自動化する
しかし、実際の職場では次のような制約があります。
- VBA・マクロが禁止されている
- 外部ソフトのインストールが禁止されている
- RPAツールを導入する予算や申請がない
- Selenium用のWebDriverを配置できない
- ブラウザの更新でSeleniumが動かなくなる
- 二要素認証やログイン制御で自動化が止まる
- 基幹システムが古く、画面要素を認識できない
- UIAで要素を拾えない、または安定しない
- EnterキーやTabキーの送信が思った通りに効かない
- 担当者のPCごとに環境差があり、保守できない
つまり、自動化したい業務があっても、 自動化ツールを導入できない、または安定運用できないケースがあります。
2. RPAが向かない工程とは
RPAは非常に便利ですが、すべての入力作業に向いているわけではありません。
特に、次のような工程では、RPAよりも別の方法を検討した方がよい場合があります。
| RPAで困りやすい工程 | 理由 |
|---|---|
| 古い基幹システムへの入力 | 画面要素を認識できない、または安定しないことがある |
| 閉域環境での作業 | 外部ツールやクラウド型RPAを使えない場合がある |
| 導入申請が必要な職場 | RPAツール導入までに時間がかかる |
| 少量から中量の定型入力 | RPAを作るほどではないが、手入力は面倒な場合がある |
| 画面変更が多い業務 | ボタン位置や項目名が変わるたびに保守が必要になる |
| EnterやTabの挙動が特殊な画面 | 通常EnterとNum Enterの違いなどで詰まることがある |
このような業務では、 画面を直接操作する自動化ではなく、 入力するデータそのものを整えて、人間の操作を最小化する という方向が有効な場合があります。
3. Seleniumが使いにくい現場
Seleniumは、Web画面の自動操作に強い方法です。 Webフォームに値を入れたり、ボタンを押したり、画面遷移を自動化したりできます。
しかし、職場の業務システムでは、Seleniumが使いにくいことがあります。
- WebDriverを配置できない
- ブラウザ更新で動作が変わる
- 社内ブラウザ設定で制限される
- ログインや二要素認証で止まる
- 画面が特殊で要素を安定して取得できない
- そもそもWebシステムではなく、Windowsアプリや端末画面である
また、Seleniumは基本的にWeb画面向けです。 古い基幹システム、専用クライアント、リモート端末、エミュレータ画面などでは、 思うように使えないことがあります。
その場合、画面内部の要素を操作するのではなく、 キーボード入力として値を送る発想が役に立つことがあります。
4. VBAのSendKeysやUIAで詰まることもある
VBAで自動化しようとする場合、よく使われるのが SendKeys です。
SendKeys "{ENTER}"
しかし、SendKeys は環境によって不安定になることがあります。
- フォーカスがずれる
- 処理タイミングが合わない
- 送ったキーが反映されない
- 通常EnterではなくテンキーEnterが必要な画面がある
- 管理者権限やセキュリティ設定の影響を受ける
UI Automation(UIA)も、Windowsアプリ操作では有効な方法です。 ただし、対象アプリの作りによっては、要素が見えなかったり、 ボタンや入力欄を安定して取得できなかったりします。
このように、VBA、SendKeys、UIAを使っても、 実務画面では思った通りに動かないことがあります。
5. QRリーダー入力自動化という考え方
そこで使える場合があるのが、 QRリーダーをキーボード入力装置として使う方法 です。
多くのQRリーダーやバーコードリーダーは、 読み取った内容をキーボード入力としてPCに送信できます。
これは大きな利点です。 相手がExcelでも、Webフォームでも、専用ソフトでも、古い基幹システムでも、 入力欄がフォーカスされていてキーボード入力を受け付けるなら、同じ考え方で試せます。
つまり、QRコードの中に入力したい文字列を入れておけば、 QRリーダーで読み取った瞬間に、現在フォーカスが当たっている入力欄へ文字が入力されます。
さらに、設定や機種によっては、読み取り後に次のようなキー操作も組み合わせられます。
- Tab
- Enter
- Num Enter
- Prefix
- Suffix
- 文字間ディレイ
- 読み取り後の待ち時間
- 一部文字を特殊キーに変換する設定
これにより、単に文字を入力するだけでなく、 入力欄の移動や確定操作まで含めた入力補助ができます。
一方で、QRリーダーは画面を見て判断する道具ではありません。 「エラーが出たら戻る」「在庫が足りなければ別画面へ進む」「入力値によって処理を変える」といった条件分岐は、 QRリーダー単体ではできないと考えておく必要があります。
6. 画面を操作するのではなく、入力列を作る
RPAやSeleniumは、画面そのものを操作しようとします。
一方、QRリーダー入力自動化では、考え方が少し違います。
画面を自動操作するのではなく、 人が入力する順番に合わせて、Excel側で入力用の文字列を作る という発想です。
たとえば、ある画面に次の順番で入力するとします。
- 社員番号
- Tabで次の欄へ移動
- 処理区分
- Tabで次の欄へ移動
- 対象年月
- Enterで確定
この場合、Excel側で次のような入力順序を作ります。
社員番号 + Tab + 処理区分 + Tab + 対象年月 + Enter
それをQRコード化し、QRリーダーで読み取ることで、 手入力の回数を減らせる可能性があります。
この方法は、複雑な判断処理には向きません。 しかし、入力項目の順番が決まっている定型作業には強いです。
条件分岐が必要な場合は、QRを読む前にExcel側で対象データを絞り込む、 確認列で人が判断する、処理パターンごとに別のQRを作る、という形に分けると扱いやすくなります。
7. RPA・Selenium・UIA・QRリーダー入力の比較
それぞれの方法には、向き不向きがあります。
| 方法 | 向いていること | 苦手なこと |
|---|---|---|
| VBA | Excel内処理、簡単な定型操作 | マクロ禁止環境では使えない |
| Selenium | Web画面の自動操作 | WebDriver、ログイン制限、ブラウザ更新に影響される |
| RPA | 画面操作全般の自動化 | 導入、保守、ライセンス、権限管理が重い場合がある |
| UI Automation / UIA | Windowsアプリの操作 | 対象アプリによって要素を取得できないことがある |
| Power Query | データ整形、結合、取り込み | 入力画面の操作はできない |
| QRリーダー入力 | 定型入力、閉域環境、ソフト禁止環境、幅広いソフトへのキー送信 | 画面状態の読み取り、条件分岐、エラー判断には向かない |
QRリーダー入力自動化は、RPAやSeleniumの完全な代替ではありません。
しかし、RPAを入れるほどではない入力作業、 Seleniumが使えない業務画面、 VBAやマクロが禁止されている職場では、 現実的な代替案になることがあります。
8. QRリーダー入力が向いている業務
QRリーダー入力自動化が向いているのは、次のような業務です。
- 入力する項目が決まっている
- 入力順序が毎回ほぼ同じ
- Excel側で入力データを作れる
- 人が画面を確認しながら進めたい
- RPAを入れるほど件数が多くない
- しかし手入力では面倒、またはミスが出る
- 基幹システムを改修できない
- 外部ソフトを入れられない
- バーコードリーダーやQRリーダーが現場にある
たとえば、次のような場面です。
- Excelの一覧から対象者だけを抽出し、別システムに入力する
- 固定長帳票やCOBOL帳票を整形し、必要項目だけを入力する
- 商品コード、社員番号、処理区分などを定型画面へ入力する
- Tabで項目移動し、最後にEnterで確定する画面に入力する
- 通常EnterではなくNum Enterが必要な業務画面に入力する
9. QRリーダー入力が向かない業務
一方で、QRリーダー入力自動化が向かない業務もあります。
- 画面上の条件によって入力内容が大きく変わる
- 複雑な分岐判断が必要
- 入力結果を読んで次の操作を自動で変えたい
- エラー表示を読み取って自動判断したい
- 大量件数を完全無人で処理したい
- 画面遷移が毎回大きく変わる
- 入力先のフォーカスが安定しない
- 入力ミスが重大事故につながるため完全な検証機構が必要
このような業務では、RPA、Selenium、API連携、システム改修などを検討した方がよい場合があります。
QRリーダー入力自動化は、 すべてを自動化する方法ではなく、人間の確認を残しながら入力負担を減らす方法 と考えると使いやすいです。
逆に言えば、条件分岐をQRリーダーに任せようとしないことが大切です。 QRリーダーは、ほぼキーボードです。 どのキーをどの順番で送るかは得意ですが、画面を読んで判断する役割はRPAや人間側に残ります。
10. Enterが効かない場合はNum Enterを疑う
業務システムでは、通常のEnterキーでは確定できないのに、 テンキー側のEnterでは確定できる場合があります。
このテンキー側のEnterは、Num Enter、Numpad Enter、テンキーEnterなどと呼ばれることがあります。
これは、VBAのSendKeys、RPA、Selenium、QRリーダー、バーコードリーダーのいずれでも問題になることがあります。
たとえば、次のような場合です。
- Enterを送っているのに画面が進まない
- バーコードリーダーのSuffixにEnterを入れても確定されない
- キーボードのテンキーEnterなら確定できる
- RPAでEnter操作を入れても反応しない
- VBAのSendKeys "{ENTER}" では期待通りに動かない
この場合、通常EnterとNum Enterの違いを確認する必要があります。
QRリーダーによっては、読み取り後のキーを通常Enterではなく、 Num Enter相当のキーに設定できる場合があります。
このような入力確定の違いは、QR Automationを考える上で非常に重要です。
11. 文字欠けや入力漏れにはディレイが必要になる
QRリーダーで長い文字列を一気に送ると、 入力先のシステムが処理しきれず、文字欠けが起こることがあります。
特に、古い基幹システムや反応の遅い画面では注意が必要です。
この場合、次のような対策を検討します。
- 文字と文字の間に待ち時間を入れる
- TabやEnterの前後に待ち時間を入れる
- 画面遷移後に入力を再開するためのSleepを使う
- 入力文字列を短く分割する
- QRコードを複数に分ける
RPAでも画面待機が重要なように、 QRリーダー入力でも、入力先の処理速度に合わせることが重要です。
12. COBOL帳票や固定長データとも相性がよい
QRリーダー入力自動化は、COBOL帳票や固定長テキストの整形とも相性があります。
たとえば、基幹システムから出力された帳票データをExcelに貼り付けると、 A列にすべて入ってしまうことがあります。
その中から、対象者や対象明細だけを抽出し、 必要な項目だけを別システム入力用に並べ替えることができます。
さらに、その入力用データをQRコード化すれば、 QRリーダーを使って別システムへ入力する流れを作れます。
つまり、次のような流れです。
- COBOL帳票や固定長テキストをExcelに貼り付ける
- 不要行、ヘッダー行、合計行を除外する
- 親情報を明細行へ補完する
- 対象者や対象明細だけを抽出する
- 半角英数字の入力用データに変換する
- QRコード化する
- QRリーダーで別システムへ入力する
このように、Excelでのデータ整形とQRリーダー入力を組み合わせることで、 RPAやSeleniumを使わずに、入力作業の一部を減らせる場合があります。
13. どの方法を選ぶべきか
自動化方法は、業務の内容と職場の制約によって選ぶ必要があります。
| 状況 | 向いている方法 |
|---|---|
| Excel内で完結する処理 | 関数、Power Query、VBA |
| Web画面を安定して操作できる | Selenium、RPA |
| Windowsアプリの要素を取得できる | UI Automation / UIA |
| RPA導入が許可されている | RPA、Power Automate Desktop |
| VBAや外部ソフトが禁止されている | Excel関数、QRリーダー入力 |
| 入力順序が決まっている | QRリーダー入力 |
| キーボード入力できるが、自動化ツールは入れられない | Excel + QRリーダー入力 |
| 完全無人で大量処理したい | RPA、Selenium、API連携、システム改修 |
| 人間の確認を残しつつ入力を減らしたい | Excel + QRリーダー入力 |
QRリーダー入力自動化は、RPAやSeleniumの代わりにすべてを処理するものではありません。
しかし、制限の多い現場では、 使える道具だけで現実的に入力作業を減らす方法 として非常に有効な場合があります。
14. まとめ
RPA、Selenium、VBA、UIAは強力な自動化手段です。
しかし、職場によっては、マクロ禁止、外部ソフト禁止、WebDriver不可、RPA導入不可、 古い基幹システム、閉域環境などの理由で使いにくいことがあります。
そのような場合、画面を直接操作するのではなく、 Excelで入力データを作り、QRリーダーをキーボード入力装置として使う方法があります。
QRリーダーはキーボード扱いのため、入力欄さえ受け付けてくれれば、 特定のアプリに依存しにくいのが強みです。 ただし、条件分岐や画面判断はできないため、事前にExcel側で入力パターンを分ける設計が重要です。
この方法は、複雑な判断や完全無人処理には向きません。 しかし、入力順序が決まっている定型作業や、 人間が確認しながら進める業務には向いています。
特に、次のような現場では検討する価値があります。
- VBAやマクロが禁止されている
- RPAを導入できない
- SeleniumやWebDriverを使えない
- 古い基幹システムで画面操作が安定しない
- 通常EnterとNum Enterの違いで入力確定に困っている
- Excelで入力データは作れるが、別システムへの入力が面倒
- COBOL帳票や固定長データを整形して再入力している
RPAが使えないから自動化できない、とは限りません。
画面操作の自動化が難しい場合でも、 入力データを整え、QRリーダーでキーボード入力として流す という別の考え方があります。
制限の多い現場では、このような小さな工夫が、 手入力の削減、ミス防止、作業時間短縮につながることがあります。