【RPA】UiPath Studio Xで外注費の源泉税をExcelから読み取り、e-Taxで自動で払う方法。
毎月行う外注費(業務委託料)の源泉税の支払い業務は効率化したいですよね。
過去に外注費をExcelで集計する方法、e-Taxで源泉税を払う方法を紹介しました。
今回は、こちらをRPAのUiPath Studio Xでさらに効率化してみます。
目次
既存のプロジェクトをコピーして新規プロジェクトを作成する
前回の記事で、e-Taxに自動ログインするプログラムを作りました。
今回はこちらのプログラムをコピーして作っていきたいと思います。
なお、最初から作る方はコピーせずに前回の記事の続きから作成していただいても構いませんが、
- e-Taxにログインするだけのプログラム
- 源泉税を支払うプログラム
は別に用意しておいた方が後々便利です。
今回最初から源泉税のプログラムだけを作る場合は、e-Taxログイン後の部分をカットすることで、後からe-Taxにログインするだけのプログラムを作ることも可能です。
既存のプロジェクトをコピーする
プロジェクトをコピーするには、既存のプロジェクトフォルダを丸ごとコピーします。
UiPath Studio Xで作ったプログラムは、「PC」→「ドキュメント」→「Uipath」フォルダに保存されています。
この中のコピーしたいプログラム全体のフォルダを選択し、Ctrl+C、Ctrl+Vで同じ階層にコピーします。
なお、UiPathフォルダの場所は移動しても問題ありません。
僕はDropboxに入れています。
プロジェクト名を変更
わかりやすいようにプロジェクト名を変更します。
まず、F2キーを押してフォルダ名を変えておきます。
今回は「e-Tax_外注源泉支払い」としました。
ただ、これだけではUiPath Studio Xで開いたときにプロジェクト名が変わりません。
中身のプロジェクト自体の名前も変える必要があります。
フォルダをダブルクリックして開き、「project.json」というファイルをメモ帳にドラッグ&ドロップします。(メモ帳を開くには、Windowsキーを押して「メモ」と検索しましょう)
「”name”: “〇〇”」の〇〇の部分がプロジェクト名です。
こちらを変更し、Ctrl+Sで上書き保存します。
UiPath Studio Xでファイルを開く
コピーしたファイルを開いてみます。
UiPath Studio Xの「ホーム」タブ→「開く」→「ローカル プロジェクトを開く」をクリックします。
「Uipath」フォルダの中の先ほどのフォルダを開き、「project.json」ファイルを選び、「開く」をクリックします。
ファイル名がきちんと変わっています。
一度実行してみて問題がなければ、正しくコピーされています。
ちなみに、「プロジェクト」→「プロジェクトの設定」→「全般」タブの名前からも名前の変更はできます。
ただ、こちらから変更する場合、なぜか()【】_といった記号が使えません。
記号を使いたい場合は上記の方法で変更していただければと思います。
UiPath Studio Xでe-Taxを自動化
コピーしたプロジェクトを使い、ログインしたところから続きを作っていきます。
プロジェクトを一度実行し、ログイン後の画面まで進めておきます。
ここからは、前回と同じ「アプリ/Webレコーダー」で作っていきます。
「申告・申請・納税」をクリックします。
ここは上手く認識されないケースがありますので、アンカーを指定しておいた方が良いかと思います。
アンカーはできる限りスクロールせずに認識できる箇所にしておくのがコツです。
「新規作成」の「操作に進む」をクリックします。
ここは、なかなか上手くいかなかったのでアンカーを3つ指定しました。
アンカーを指定してもエラーになりましたので、ターゲットの歯車マークを押し、「ウィンドウ セレクター」の「ターゲット」の「セレクター」にチェックを入れ、歯車マークの右の「UI Explorer で開く」をクリックして以下のように指定しました。
「アンカー」も同様にセレクターを指定しています。(正直、エラーになったのは直前に不要な工程が入っていたことが原因な気がします…)
この後、一旦ページの外枠をクリックし、該当の手続きを表示させるために「『PageDown』キーを押す」という操作も記録させます。
「報酬・料金等の所得税徴収高計算書」を選びます。
提出先税務署の画面で「次へ」をクリックします。
「納期等の区分」を入れます。(数字は適当で大丈夫です)
ここでExcelから読み取るように指定することもできますが、今回は一旦先にすべて記録してしまいます。
区分は「01」がほとんどかと思います。
先に右側の▼をクリックし、選択肢を表示させた後、「01 原稿料、〜」を選択する動作を記録させます。
ここで、「『PageDown』キーを押す」という操作を記録します。
下にスクロールさせ、「次へ」ボタンを認識させるためです。
その後、「次へ」をクリックします。
人員、支払額、税額に適当な数字を入れます。
この後、また「PageDown」を記録します。
「次へ」をクリックします。
次は納付書形式の確認画面です。
ここはそのまま「次へ」に進んでも良いのですが、念のためにこちらの納付書をPDFで保存しておきます。
「PageDown」をクリックして記録し、「印刷」をクリックします。
「はい」をクリックします。
ここで上手くターゲットが指定されない場合は、いかりマークを押してアンカーを指定します。
僕は「いいえ」ボタンをアンカーにしました。
「PDF作成が完了しました。」というポップアップが出ますので、「保存」をクリックします。
この後は、フォルダを指定して保存するまでの操作を記録させたかったのですが、ちょっと上手くいかなかったので一旦ここまで自動化させました。
PDF作成をせずに、そのまま「次へ」へ進めばネットバンクで払うところまでも自動化できます。
「アプリ/Webレコーダー」のウィンドウの一時停止ボタンを押し、「保存してStudioに戻る」をクリックします。
ここで一旦保存し、実行させてみて問題がないか確認してみましょう。
(実行させるときは、一旦e-Taxからログアウトし、納付書のPDFファイルも削除しておきます)
ちなみに、「Main」の領域で前回作った枠の中に入っていないとプログラムが上手く動作しない場合があります。
別の枠に入ってしまった場合は、ドラッグすれば位置を変えられます。
上手く動作しないときは、このように位置を変えてみていただければ。
なお、エラーになる主な原因は
- 不要な工程が入っている
- 要素が上手く認識できない
場合のどちらかがほとんどです。
最初、「ページのどこかをクリックする」という工程を入れていたのですが、このページ内の要素をUiPath Studio Xが上手く認識できず、エラーになっていることが多々ありました。
この動作を削除したことで動くようになったケースが何回もあります。
また、ターゲットやアンカーが上手く認識できないときは、先ほどのUI Explorerでできるだけセレクターを細かく設定することで認識されやすくなるかと思います。
次はExcelからデータを読み取って入力していきます。
Excelからデータを読み取る
読み取るExcelファイルを作成
最初に、読み取るためのExcelデータを準備します。
今回は、こちらの記事で作成したExcelファイルを使います。
一番左に「e-Tax」というシートを新たに作成し、以下ののように利用者識別番号、暗証番号、外注費の金額を入れていきます。
A〜F列までは手入力で、G〜K列までは隣の「pivot」のピボットテーブルのデータを算式で連動させています。
なお、「pivot」のシートの「年」は西暦になっていますので、
「=pivot!B1-2018」
という式を入れれば令和に直すことができます。(もちろん、最初からデータを元号で作っても構いません)
Excelからデータの読み取り
UiPath Studio Xに戻り、プログラムの続きを作っていきます。
左の「アクティビティ」→「リソース」の中の「Excelファイルを使用」をダブルクリックします。
「Excelファイル」の右側のファイルのアイコンをクリックし、さきほど作ったファイルを指定します。
「参照名」はこのExcelファイルのプロジェクト内で使う名前です。
わかりやすい名前をつけておきます。
「アクティビティ」の「Excel」→「セル」の「セルの値を読み込み」を図の位置にドラッグします。
「セル」の右側の「+」をクリックしてセルを指定します。
Excel上で指定し、「確認」をクリックします。
「保存先」は「後で使用するために保存」とします。
値の名前はわかりやすい名前をつけておきます。
同様にしてすべてのセルの値を読み取っておきます。
なお、ご自身の会社ひとつだけであれば利用者識別番号と暗証番号は読み取らなくても大丈夫です。(前回作ったプログラムをコピーして使う場合)
ただ、税理士で複数のお客様の源泉の処理をする場合は、番号等もExcelから読み取れた方が便利ですので、上記の方法で読み取って保存しておくことをおすすめします。
Excelから読み取った値をブラウザに入力
- Excelからの読み取り
- Webレコーディング
が終わったら、読み取った値をブラウザに自動入力させるように変更します。
値を入力する項目に戻り、「以下を入力」の横の「+」ボタンをクリックすると先ほど保存した値が選択できるようになっています。
ここから保存した値を選び、入力していきます。
同じ要領で、すべての入力項目をExcelから読み取るように変更します。
読み取りが完了したら、保存して実行し、上手く動作すれば完成です。
動画を撮ってみました。
やはり人が操作するより速いです。
以前、同じくRPAのPower Automate Desktopで今回のプログラムを作ろうとしたのですが、報酬の「区分」を選択するところが上手くいかず、挫折しました…。
今回、UiPath Studio Xを使ってみて、要素の指定はPower Automate Desktopの方が楽ですが、
- 変数を定義しなくて良い
- 作ったプログラムが見やすく、後から変更しやすい
という点ではUiPath Studio Xの方が使いやすいと感じました。
最初に作るときは大変ですが、一度作ってしまえば来月以降ずっと楽になります。
ぜひ挑戦してみていただければと思います。
サービスメニュー
Postscript執筆後記
今日もずっとプログラム開発、合間に打ち合わせ。「操作に進む」の前に不要な工程が入っていたことに気づくのに時間がかかりました…。
完成したときは思わず涙が出ました…笑