入力ファイルの事前チェック(必須項目・形式・件数・重複)とエラー行の扱い
ロボットが入力ファイルを処理する前に、列の構成、件数、必須項目、形式、重複などをまとめてチェックする設計と、エラーの行を除外して進めるか全体を止めるかの判断、担当者への伝え方を解説します。
処理の途中で気づくより、最初に気づく
架空の例として、担当者が作成した入力用 Excel を読み込み、人事システムに社員の異動情報を登録するロボットを考えます。入力ファイルに、日付の誤り、社員番号の空欄、同じ社員の重複などが混ざっていると、ロボットは登録の途中でエラーになったり、誤ったデータをそのまま登録したりします。
画面の操作に入る前に、入力ファイルをまとめてチェックしておけば、問題の行を早く担当者に返せますし、システムに中途半端なデータが残ることも防げます。チェックはロボットの処理の最初に置くのが基本です。
チェックする項目
チェックは、ファイル全体に関するものと、1行ごとのものに分けて考えます。
- ファイル全体:ファイルが存在するか、想定の見出し(列名と並び)になっているか
- ファイル全体:件数が0件でないか、普段より極端に多くないか
- 1行ごと:必須項目(社員番号、異動日など)が空欄でないか
- 1行ごと:形式が正しいか(社員番号が6桁の数字、日付として読めるか)
- 1行ごと:値が範囲内か(異動日が過去すぎない、部署コードが一覧に存在する)
- 行どうし:同じ社員番号が重複していないか
エラー行をどう扱うか
エラーが見つかったときの扱いは、業務の性質によって決めます。担当者と相談し、どちらの方針にするかを仕様書に明記しておきます。
- ファイル全体の問題(見出しが違う、0件)→ 処理を始めずに止め、担当者に通知する
- エラー行が一部で、他の行と独立している → エラー行だけ除外し、残りを処理する
- 全件がそろって初めて意味がある(一括の異動など)→ 1行でもエラーがあれば全体を処理せず差し戻す
- エラー行が一定の割合(例:2割)を超える → ファイルの作り方の誤りを疑い、全体を止める
エラーの伝え方
チェックの結果は、担当者がすぐに直せる形で返します。「入力エラーがあります」だけでは、どこを直せばよいか分かりません。行番号、列名、入っていた値、理由の4点をそろえて書き、可能なら直し方も添えます。
たとえば「12行目 異動日 2026/13/01 日付として正しくありません」「25行目と31行目 社員番号 104522 が重複しています。どちらかを削除してください」のような形です。入力ファイルにエラー欄の列を設けて直接書き込むと、担当者はそのファイルを直して置き直すだけで再実行できます。
よくある失敗
入力チェックで起きやすい失敗です。
- 列名ではなく列の位置で読んでいて、担当者が列を1つ挿入しただけで全列がずれる
- 見た目は空欄なのに空白文字が入っていて、必須チェックをすり抜ける
- Excel 上は日付に見えるが、実際は文字列で入っている
- チェックを厳しくしすぎて、問題のないデータまで弾いてしまう(ルールは担当者と合意して決める)
入力ファイル側でも防ぐ
ロボットのチェックとあわせて、入力用 Excel 自体にも工夫をしておくと、エラーそのものが減ります。部署コードはドロップダウンから選ばせる、日付の列に入力規則を設定する、見出し行を保護して変更できないようにする、といった方法です。入力ファイルのひな形と記入ルールを、運用手順書に添付しておくとよいでしょう。
※BizRobo! は RPA テクノロジーズ株式会社の製品です。本サイトは同社とは関係のない個人の解説サイトです。画面や機能の名称は、製品のバージョンによって異なる場合があります。