はじめに
私は人材系企業の社内SEとして、RPA開発を行っていました。流行り言葉となっているRPAですが、高額なシステム、優秀なシステムコンサルタントによる分析・開発が必要と言われています。
しかし、採用業務に使うシステムは、一般にWebアプリケーションが多いです。そのため、ブラウザ自動化ツールの活用により、有償のソフトウェアを使わなくてもRPA導入ができる余地があります。
今回は、みんな大好き?エクセル+SeleniumBasic(詳細は後述)を使うことで気軽(≠簡単)にRPAを試すことができることを紹介します。
実際に業務で使用したツールと開発した事例を紹介し、どのようなことができるかをお伝えします。
続編では、②インストール方法、③実際のプログラム例 を執筆しようと思います。
お手軽=サーバの準備等不要、特別なツール不要、業務用PCならほぼ全員が使える
という意味で書いており、RPA開発(≒システム開発)には、業務知識だけでなく、プログラミング(VBA)の知識が必要になります。
使うツールと環境
- PC:Windows10
- Office:Microsoft Excel 2019(※VBAが使えれば、バージョンは問わないはずです)
- SeleniumBasic
公式サイト:https://florentbr.github.io/SeleniumBasic/
SeleniumBasicとは?
そもそも、「Selenium」と呼ばれるブラウザの自動化ツールが存在します。SeleniumBasicはそのSeleniumをExcelVBAやVB.Net、VBScriptで利用できるライブラリ(プログラム集のようなもの)になります。
元々、SeleniumはWebアプリ等のブラウザテストを自動化させるために使われており、Java、Python、C#などですでに開発されていました。
SeleniumBasicでは、SeleniumをEXCEL VBAで開発することができるため、下記のメリットがあります。
- ユーザの各PCで実行可能(EXCELがインストールされていれば良い)
- VBAなので、既存業務に組み込み可能(Webサイト操作による部分の自動化のみ追加)
- VBAの延長なので、簡単?(と思われている)
これらは、裏を返すとデメリットになるのですが、「気軽」という部分で選択されていました。
また、SeleniumBasicとSeleniumはAPIが同じまたは似ているため、情報量の多いSeleniumを調べれば、同様のことができるため、調べながら進めるにはちょうど良いかと思います。
参考(Seleniumブラウザー自動化プロジェクト): https://www.selenium.dev/ja/documentation/
人材系企業、採用業務での事例
- 取引先企業の調査
人材業界に関わらずですが、取引先をインターネットを使って調査をすることがあるかと思います。例えば、Googleで企業名や代表者名を調べて実存するか調べたり、ニュースサイトで検索して事件や行政処分等を受けていないかなどの調査をすることがあると思います。
この業務を効率化するために、
- EXCELに取引先情報を入力
- 各取引先ごとにGoogleやニュースサイトで検索
- 結果のスクリーンショット画像を取得
- フォルダに保存する
RPAを開発しました。調査担当者は、画像を確認し、懸念点がありそうな企業に絞って追加調査することになり、大部分の無問題の企業の調査時間の短縮になりました。
2. ATS応募者の自動スクリーニング
リクオプやジョブオプなど、ATS(※1)を導入している企業の場合、応募者データを一覧で出力できます。また、応募者が多いと、学歴や希望シフトなどで1次スクリーニングすることがあると思います。また、その1次スクリーニングはEXCEL関数を組んだシートで簡単にできるようにしていることも多々あると思います。
毎日、ATSからダウンロードして、その後の処理を自動化するために、
- ATSへのログイン
- 応募者データのダウンロード
- スクリーニングツールへの貼り付け
- スクリーニングシートを各店舗ごとに分割
- メール作成(※2)
のRPAを開発しました。面白くない日々のルーティンを自動化させるのは、RPAの強みだと思います。
※1)ATS=Applicant Tracking Systemの略で、採用管理システムのこと
※2)メール作成の自動化はWindowsAPIを使い、Outlookの自動化で対応
3. OMRの自社サイトからメディアに自動出稿
最近流行りのOMR(※1)を実践されている企業の場合、自社の採用情報はすべて自社採用サイトに掲載されていると思います。ただ、自社サイトだけでは採用ができないため、バイトルやタウンワークなどにも広告掲載していると思います。そのときに、自社サイトからデータを出力して、必要な加工をして、媒体社の担当者にメールするということをしていると思いますが、2と同様に開発をしました。
※1)OMR=Owned Media Recruiting。自社採用サイト(オウンドメディア)を通じた採用活動のこと。求人媒体によらず直接採用を行う手法。
4. 競合調査
時給によって応募者の総数が変わってくるため、特に派遣会社は競合調査を行っていることが多いです。そのやり方は、各求人メディアを開いて、職種や業種で検索して、ページをコピーして、時給のみ取り出していくようなことをしていることもあります。ブラウザ自動化ツールのSeleniumBasicを使えば、
- サイトを開く
- 職種や条件で検索
- 検索結果のページから時給部分だけ抜き出す
- 一覧表にする
という一連の流れを自動化することが可能です。
まとめ
今回はSeleniumBasicを使って、Webアプリケーションの業務を自動化した事例を紹介しました。人材業界や採用業務は汎用のものが多くブラウザで操作できるようなサービスが多いです。そのため、SeleniumBasicなどを使って、ブラウザ自動化することで一部の業務をRPA化することができました。
補足:有償のツールでRPAはもっと簡単?
有償のUiPathやWinActorはノーコードで誰でもみたいな宣伝がされていますが、当然、トレーニングが必要です。そして、開発である以上、プログラミング思考がないと業務を構造化して自動化させることは難しいと思われます。
また、ブラウザの自動化には、HTMLの知識が必要であり、知識いらずということではありません。