_今回は(前回の記事はこちら)、いよいよ「かけ~ぼ」からデータをエクスポートする方法を解説します。
_【2020/09/25追記】 2020年08月16日に「かけ~ぼ」はV1.52にバージョンアップされ、本記事の内容は古くなってしまいました。新バージョンに対応したこちらの記事を参照してください。
1.「かけ~ぼ」が出力するCSVファイル
_「かけーぼ」は、ユーザーのDropboxのサーバーフォルダ内に「アプリ」およびその中に「かけ~ぼ」というフォルダを作成し、以下の8つのCSVファイルを格納する機能があります(Google Driveも対象となっていますが解説は割愛します)。このファイル群は、本来はスタンドアロンの家計簿アプリである「かけ~ぼ」のバックアップ手段として出力されるものですが、当Blogではこれらを利用して他の家計簿アプリとのデータ変換を行います。
-
budget.csv(予算設定)
-
※card.csv(クレジットカードおよび電子マネーの設定)
- ※cashbook.csv(家計簿の取引データ本体)
- ※codeName.csv(帳簿のコード番号と名称の紐付けデータ)
-
dailymemo.csv(日記のデータ)
-
fixdata.csv(正体不明)
- ※items.csv(費目の名称、描画色などのデータ)
-
preference.csv(「かけ~ぼ」の設定)
_この中で、データ変換処理に直接関係するのは ※ のついた4つです。
_ちなみに、出力先となっている「かけ~ぼ」というフォルダ名は非常に不適切です。Excelでこのフォルダ名を参照すると「かけ?ぼ」となってしまい、様々な処理の場面でエラーを発生させる原因になります(次回に触れます)。開発元には是非とも変更していただきたいところです。
_さらに言えば…スマホアプリにDropboxの全アクセス権を委ねてしまうというのは、実はかなり度胸が要ります。開発元は非推奨としているものの、SDカードへの保存を心がけた方がいいかもしれませんね。
(1)card.csv
_クレジットカードおよび電子マネーの設定データのファイルです↓。【登録タイプ】の列が重要で、
-
0:「利用日に登録」するクレジットカード
-
1:「請求日に登録」するクレジットカード
-
2:電子マネー
_となっているようです。
_また、↓の例では01財布・02財布という電子マネーが入っていますが、これは筆者が現金を電子マネーとして取り扱う実験をした後に削除したはずのもので、「並び順」=-99というのがそれを示しているようです。「かけ~ぼ」も削除したふりをして実は非表示にしているだけなんだな~というのがこれで判るわけです(代表的な例ではZaimもこういう処理をしています)。
(2)codeName.csv
_帳簿のコードとそれに対応する名称のデータです↓。
(3)items.csv
_「費目の名称、カラー設定等を保存しているデータです。I列に【割当】とあるのは…「かけ~ぼ」ではデータ入力画面で費目をフリック入力する機能があり、そのフリック入力の向きの割り当て状況を示しています。筆者はその機能を使用していないので空欄になっています。
(4)cashbook.csv
_家計簿の本体データですが↓、「かけ~ぼ」は帳簿・支払い方法(現金・クレジッカード・電子マネー)をコード番号で表現するため、このデータだけを読めば他の家計簿アプリ向けに変換できる…というわけにはいきません。面倒な方式を採用したものですなあ…
2.MFFマクロによる「かけ~ぼ」→MFF形式変換処理の概要
_これまでの記事で述べてきましたとおり、「かけ~ぼ」はシンプルを標榜しているわりには複雑な動作をする家計簿アプリです。そのためMFFマクロによるデータ変換処理も結構面倒なことをさせられています。
_特に「コード番号主義」への対処としては、cashbook.csvをMFF形式に変換する際、card.csvとcodeName.csvの中身を配列に読み込んで、コード番号を具体的な口座名称に変換しています。そのため、cashbook.csvと同じフォルダにcard.csvとcodeName.csvの両方が格納されていることがマクロ動作の大前提となります。面倒なのでファイルの不在や破損に対するエラー処理はしていませんのでMFFマクロを動作させるときはくれぐれもご注意ありたく。
(1)収入・支出取引
_これまで触れていませんでしたが、「かけ~ぼ」には品名・店名・備考といったデータ項目が無く、ユーザーが自由記入できるのは「メモ」欄一つのみです。そこで、MFFマクロでは、ユーザーが「かけ~ぼ」アプリでメモ欄に (品名)(@店名)(※備考) の形(MFF書式)で入力してあれば、それぞれMFF形式の内容欄・取引先欄・メモ欄に分解し、これらのデータ項目を有している他の家計簿アプリ向けに変換できるようにしています。
_また、「かけ~ぼ」は費目は1階層のみですが、ユーザーが費目を「○○/△△」のように設定していれば、○○を第1階層、△△を第2階層に分解して、2階層の費目を扱える他の家計簿アプリ向けに変換できます。
_なお、ここで、クレジットカードの取扱いについて触れておきますと…MFFマクロでは、「かけ~ぼ」上でのクレジットカードを、独立した「口座」として取り扱います。支出であれば、(当該のカードを「請求日に登録」と設定している場合でも)利用日にその口座から支出したというデータに変換します。しかし、請求額の銀行口座からの引き落としについては、「かけ~ぼ」の本来データに存在しないため、MFFマクロは何もしません。
_電子マネーについてもほぼ同様で、支出に関しては利用日に電子マネー口座からの支出となるようにデータ変換を行います。チャージについては後述します。
(2)電子マネーへのチャージ
_前回の「誰も教えてくれない「かけーぼ」での家計管理法(後篇)」で述べましたように、「かけ~ぼ」は電子マネーへのチャージの記帳の仕方が独特です。MFFマクロでは、電子マネーへのチャージは、帳簿の現金口座またはクレジットカード口座からの振替支出の形に変換するようにしています。また、MFFマクロのお約束として、その反対、つまり電子マネー口座に帳簿の現金口座またはクレジットカード口座から振替収入があったというデータをでっち上げます。
(3)帳簿間送金
_帳簿間送金についても、帳簿イの現金から帳簿ロの現金への送金を、MFFマクロでは、帳簿イからの振替支出と、帳簿ロへの振替収入という二つの取引データに変換します。
_なお、前回の記事の最終段(8.誰も教えてくれない「かけ~ぼ」の応用技)で述べた「全ての現金・銀行口座・クレジットカード・電子マネーを帳簿として取り扱う」という運用法では、口座振込、ATM引落し、クレジットカード請求額の引落し、電子マネーへのチャージなど、あらゆる取引をこの帳簿間送金として記帳しなければならず、MFF形式に変換すると振替取引のデータばかりになって非常にウザいことになるでしょう。しかし、これは明示的に振替取引をサポートしていない家計簿アプリ向けにもデータを変換できるようにするためには致し方ありません。