MFの仕訳一括登録をRPAツールUiPathで自動化

  • URLをコピーしました!

めんどくさいなーと思うことは、何か効率化・自動化するのが理想です。
今回は、RPAツールUiPathを使ったMFクラウド会計の仕訳登録の自動化についてです。
「MFの仕訳登録がめんどくさい」ときに使えます。

image

「クラウド会計ソフト」という作業

クラウド会計ソフトで効率化!
クラウド会計ソフトがあれば、らくらく経理

とは言われていますが、そうでもない部分もあります。

連携できないクレジットカードやネットバンクがあると、その部分はそれなりに大変ですし、クラウド会計ソフトに手入力しようとするとかなりストレスです。
(そして手入力せざるを得ないものがあるのも現実)

連携できるネットバンクでも、連携エラーがあったり、ワンタイムパスワードが必要だったり。
クラウド会計ソフトは自動化というレールに載せれば確かに楽ですが、クラウド会計ソフトならではのコツがあるのも事実です。
(修正や正しい決算書にするのは大変ですし)

そのコツをつかんだとしても「クラウド会計ソフト」自体魔法でもなんでもなく、作業は存在します。
ネットバンクと連携していても、このように、処理は終わっていないのです。

ex-it_34

クリックしてデータの明細を確認しながら、【登録】していかなければいけません。

image

MFとfreeeの違い

クラウド会計ソフトのMFクラウド会計(マネーフォワード会計に変わるとか)と、freeeは、この登録に違いがあります。
MFは、必ず登録しなければならず、freeeは、「ルールを設定してそのルール通りだったら自動登録できる」のです。
たとえば、

「フリコミテスウリョウ」だったら、支払手数料という科目にする

というルールがあった場合、freeeだとそれで登録するようにしておけば、手で登録する必要はありません。
(登録したくないときは、仕訳ルールで「推測」にします)
MFだと、登録(クリック)しなければいけないのです。

MFには一括登録というボタンがあり、チェックボックスをクリックして一括選択して[一括登録]をクリックすれば、まとめて登録できます。

image

ただ、画面に表示されているのは、10個のデータのみ。
[続きを表示]をクリックすれば、続きが出てきますが、データ量に応じてクリックしなければならず、読込処理も速いとはいえず、待ちつつクリックする必要があり、ときどき画面が固まることも。
image

もちろん、データを確認して登録するという作業は大事です。
が、ひとまず登録しておけばいいものがあるのも事実。
登録しないと、その連携データをCSV出力してExcelで使うこともできません。
家計簿のマネーフォワード(こっちはマネーフォワードMEになるとか)は、登録まで自動でできるのですが。

この登録という作業があると、手間も増えます。
日々登録していればそうでもありませんが、まとめてやろうとすると(好ましくありませんが現実的には多いかと)大変です。
自動で経理ができていると思いきや連携しているだけでこの登録が終わっていないケースもあります。
お客様自身が登録作業をするのも忍びなく、税理士事務所がその作業をするのもなんだかな・・・と。
(この点だけでfreeeを選ぶことも多いです。そもそも取引量が多い場合かつ修正の必要性がある場合はクラウド向きではないともいえますが)

MFで仕訳登録を自動化するロボット

こんなこと・・かもしれませんが、こんなことだからこそ時間をかけたくなく、自動化しています。
使っているのは、RPAツールのUiPathです。

ただし、
・自動仕訳ルールが整備されている
・あとで、仕訳修正の可能性もある
という前提はあります。

UiPathなら、ブラウザの操作を自動化できるので、ブラウザ上で動くクラウド会計ソフトの自動化もできるのです。
ただ、ブラウザはIE(インターネットエクスプローラー)を使っています。
Chormeだとしくみが違い、RPAでは不具合が出ることが多いです。

(今回の事例も挫折しました)

全体の流れはこのようなものです。

image

UiPathで、[フローチャート]というアクティビティを使っています。
繰り返しの処理があるからです。
他の繰り返しのアクティビティではなかなかうまくいかず、これに落ち着きました。

UiPathで一括登録

まず、一括登録の部分をつくります。
IE(インターネットエクスプローラー)で、連携データの登録画面を開きましょう。

image

RPAで自動化するときに、「どこから自動化するか」というのが大事です。
ブラウザを開き、ログインし、口座(連携しているネットバンク、カード)を選んで、このページに来るところから自動化もできますが、その分手間もかかります。
かっこいいんですけど、プログラミングの手間をなくすために、口座は自分で選び、登録画面を開いてからUiPathを起動させたほうが楽です。

(口座が多いとまた別ですが)

UiPathでウェブレコーディングを使い、ブラウザ上の操作を記録していきます。

ex-it_01

一括選択するには、チェックボックスをクリックするのですが、MFのしくみはちょっと特殊でUiPathがうまく認識しません。

ex-it_03

そういった場合はこういったメッセージが出ます。
「チェックボックスを認識できないから、なにかもっと確実なものを選んでほしい」という意味です。

ex-it_04

ここでは、「取引日 金額」という画像を選択するようにしました。
(一括登録のボタンだと、やや不安定でした)

この「取引日 金額」を認識し、その左にあるチェックボックスを認識してくれます。

image

記録結果は、このようなものです。

image

選択できれば、一括登録のボタンをクリックするだけです。

これで、ひとまず、初期表示の10個を登録できます。

image

しかしながら、ここで問題が。
一括登録をクリックすると、こんなボックスが出て、クリックしなければいけません。
一括登録というボタンをクリックしたんだからそのまま処理してくれればいいのですが。
(間違えちゃいけないからと、こういうワンステップ増えるのは嫌いです)

ex-it_14

こういった場合も、UiPathだと自動でクリックしてくれます。
つくるときはストレスですが、自動化しておけば、このメッセージボックスにもう一生イラっとしなくてすむわけです。

image

UiPathで「続きを表示」があるかどうか検証

最初の10件を登録したあと、「続きを表示]があるかどうか、つまり他にも登録すべきデータがあるかどうかを[要素の有無を検出]アクティビティで確認します。
もし、データがなく、「続きを表示」がなければ、UiPathの任務はそこで完了です。

image

今回の場合、
・10個を登録→続きを表示→10個を登録・・・と繰り返す
・続きを表示(データがあるだけ)→一括登録
という2つの方法があります。
後者は、データが多いと(200件ほど)、固まる可能性がありますし、それよりも多くなると登録できなくなるので、前者の方法を最終的に採用しました。

[要素の有無を検出]アクティビティをクリックし、右のプロパティの[要素の有無]にその結果を出力します。
「続きを表示」があったかどうかを次のプログラムにつなげるためです。
ここでは、変数を使います。
[要素の有無]のボックスで、Ctrl+Kを押しながら、任意の名前を入れましょう。

私は、Button_Existと付けました。

image

UiPathで条件分岐

「続きを表示」があれば、次に進みます。
こういった場合、[フロー条件分岐]アクティビティを使います。

image

[フロー条件分岐]をクリックしてプロパティにその条件を入れます。
さきほど設定した、Button_Existを入れれば、「続きを表示」があるかどうかで処理をわけることができるのです。

image

True、つまり「続きを表示」があれば、次の処理にすすみます。

image

UiPathでブラウザ更新

この後の処理は、少々やっかいでした。
最初の10件を入れて、登録すると、このような画面になります。
ここで「続きを表示」をクリックすればいいのですが、タイミングによっては、10件の下にある「続きを表示」を認識してしまいます。
別の画面ですが、同じボタンなので、UiPath側が混乱するのです。
image

結果的にはブラウザを更新し、この当初の10件の画面(登録後なので、その次の10件が表示)に戻すことにしました。
image

ただ、タイミングによっては不安定になるので、前後に[待機]を入れてIEの処理を待っています。

image

[待機]のプロパティでは、待機する時間を5秒で入れました。
PCの処理速度、ネットの速度で、最適な時間は変わります。

image

UiPathで次の10件以降を一括登録

更新した後は、上記の処理を繰り返すだけです。
が、うまくいきません。

その原因は、最初の10件とその次以降と、出てくるメッセージが微妙に違うのです。
こういった不規則もUiPathは苦手です。
(私も嫌いです)

ブラウザ更新後は、こういったボックス。

image

最初の10件はこういったボックスです。
ex-it_14

こういったことがあるので、ブラウザ更新後は、再度処理を記録したものを入れました。

image

アンカーも取り直したほうが安定します。

image

セレクターをいうものを変えてみてもうまくいかず、特殊事例ではありました。

ex-it_58

ブラウザ更新したあとは、一括登録して、「続きを表示」があるかのチェックに戻ります。

image

1 最初の10件を一括登録

2 続きがあるかどうか

3 あれば、ブラウザを更新し、次以降の10件を一括登録


4 2に戻り、続きがあるかどうかをチェック。なければ終了

5 あれば、ブラウザを更新し、次以降の10件を一括登録

・・・

という繰り返しです。

一括自動登録すると、MFクラウド会計の設計思想(あればですが)に反するかもしれませんが、「めんどくさいなー」「自動化したい」方は、ぜひやってみていただければ。

 

 


■編集後記

昨日は、個別コンサルティング。
2コマ連続(90分×2)で、HP・ブログをつくりつつ、相談にお答えしました。
前後にExcel本のチェック。
11月発売に向けて、順調に仕上がりつつあります。

■昨日の1日1新
※詳細は→「1日1新」

とある申し込み
とあるところ
■昨日の娘日記

玄関の靴をそろえるのを覚えてもらおうとしています。
まだまだピンときてないようですが、まずは大人たちから。

  • URLをコピーしました!