【UiPath Studio X】RPAで青色決算書の月別売上・仕入をExcelから自動で入力する方法。
RPAのUiPath Studio XはExcelから読み取ったデータを連続でブラウザに入力することができます。
今回は、Excelの月別売上・仕入をUiPath Studio Xで国税庁の確定申告書等作成コーナーに入力する方法を紹介します。
なお、UiPath Studio Xを使うのが初めての方はこちらを参考にインストールしておいていただければと思います。
目次
Excelを準備
確定申告書等作成コーナーの青色決算書の月別売上の入力欄はこのようなフォーマットになっています。
こちらに対応させるため、以下のような形で入力された月別売上のExcelを準備しておきます。
12ヶ月分の数字が入っていれば「月別売上」「売上高」といった部分はなくても大丈夫です。
「家事消費等」がなくて「雑収入」があるケースであれば、今回のように12月の下に1行空けて雑収入を入れておきます。
なお、こちらは会計ソフトからエクスポートしたデータを数式で連動させるのが理想です。(Excelにも手入力する手間がなくなりますので)
このやり方については改めて記事にします。
ブラウザで数字を入力する
Excelができたら、UiPath Studio Xで実際にプログラムを作っていきます。
UiPath Studio Xのホームの右上の「空のタスク」をクリックし、プロジェクト名などを設定します。
「デザイン」タブが開いたら、あらかじめブラウザの挙動の設定をしておきます。
上部メニューの「プロジェクト」→「プロジェクト設定」→「UI Automation モダン」→「アプリケーション/ブラウザ」→「クローズ動作」「オープン動作」の「実行環境の値」を「Never」にします。
今回は確定申告書を作成するうちの一部の工程になりますので、この設定をしておかないとブラウザが正しく指定できなかったり入力後にブラウザが勝手に閉じてしまいます。
次に、左の「アクティビティ」→「リソース」の「Excelファイルを使用」をMain領域にドラッグし、「Excelファイル」の横の「+」ボタンの横のファイルのアイコンを押して先ほど作ったExcelを指定します。
ブラウザ(税理士の方が代理送信する場合はInternet Explorer)で確定申告書等作成コーナーにアクセスし、青色決算書の月別売上等の入力画面まで進みます。
ここからはおなじみのアプリ/Webレコーダーで作ります。
アプリ/Webレコーダーの使い方はこちらを参考にしていただければと思います。
最初に、
「1月の『売上金額』の枠をクリック→1月の売上金額を入力(数字はひとまず適当で問題ありません)→Tabキーを1回押す」
という動作を記録させます。
ここまででWebレコーディングは停止させます。
記録した動作がMain領域でこんな感じになっていれば大丈夫です。
1月の金額はExcelから読み取りたいので、「以下を入力」というところで以下のようにクリックしExcel上のセルを指定します。(今回のExcelであればC43セル)
ここまでできたら、「ブラウザーを使用」アクティビティを「Excelファイルを使用」アクティビティの中にドラッグしておきます。
以下のようになっていればOKです。
Excelの繰り返し処理
次に、2月以降の売上を入力するプログラムを作ります。
2月以降の売上を入力
「アクティビティ」の「Excel」→「範囲」→「繰り返し(Excelの各行)」をさきほどの「ブラウザーを使用」アクティビティの中のTabキーを押す動作の後にドラッグします。
対象範囲のところは先ほどと同じく「Excel内で示す」(または表示されたシートを指定)をクリックし、矢印キーでセル範囲を指定します。(今回のExcelではC44からC56)
これで、2月の売上から雑収入までが読み込まれます。
さて、ここからが今までと少し違うところです。
今までのWebレコーディングでは、毎回クリックしたり入力する箇所を指定していました。
入力箇所が少ない場合はこれでも良いのですが、今回は2月から雑収入まで数えると13箇所あります。
これをいちいち入力してレコーディングするのは少々骨が折れます。
そこで、入力箇所をあえてブラウザで指定せず、1月の金額を入力しTabキーを押した後から続けて入力してもらうようにプログラムします。
「入力→Tabキーを押す」という動作をExcelに入っている数字の回数だけ繰り返してもらえばいいわけです。
「アクティビティ」の「アプリとWebの自動化」→「アプリケーション/ブラウザを使用」をさきほどの「繰り返し」アクティビティの中にドラッグします。
「自動化するアプリケーションを指定」をクリックし、売上金額等を入力するブラウザのタブ(売上金額等の入力ページ)を指定します。
このアクティビティの中に「アクティビティ」の「アプリとWebの自動化」→「文字を入力」をドラッグします。
「以下を入力」のところは「列1」とします。
最後に、こちらのすぐ下に「アクティビティ」の「アプリとWebの自動化」→「キーボードショートカット」をドラッグします。
キーの組み合わせはTabキーを指定します。
これで、「Excelで指定した範囲のセルの数字をブラウザにひとつずつ入力→Tabキーを押す」という動作を自動で繰り返してくれます。
仕入がある場合は、ここまでの部分をコピーして同様に作ることができます。
空白行の処理の設定
12月までの売上しかない場合、または「家事消費等」がある場合はここまでで完成です。
ただ、今回のExcelのケースのように「家事消費等」はなく、「雑収入」があるというケースも多いと思います。
ここでやっかいなのが家事消費等が空白セルになっていることです。
「0」とExcelに入れてしまい、それを読み取ってブラウザにも「0」と入力する手もありますが、空白はそのまま空白でスルーしてもらうように設定することも可能です。
「繰り返し」のアクティビティをクリックした状態で右の「プロパティ」をクリックします。
「オプション」の「空白行に対する動作」がデフォルトだと「Stop」になっています。
これを「Process」に変更します。
こうすることで、空白の「家事消費等」はそのまま空白とし、金額が入っている雑収入までプログラムが止まらずに読み込んでくれます。
なお、実行前に入力モードを半角英数字にしておかないと上手く動作しません。
同じ要領で、次回は青色決算書の自動入力プログラムも作ってみたいと思います。
サービスメニュー
Postscript執筆後記
今日はとある方とオンラインで打ち合わせ。僕のことを「フリーランスの人が税理士資格も持っている感じ」と言っていただいたのですが、自分でもとてもしっくり来る表現でした。