_2020/09/23「「かけ~ぼ」に新バージョンが出現していた…!」でお伝えしましたとおり、「かけ~ぼ」が出力するデータファイルが変更されたため、「かけ~ぼ」V1.52に対応した新しい記事をアップいたします。旧記事はこちらです。
1.「かけ~ぼ」が出力するCSVファイル
_「かけーぼ」は、ユーザーのDropboxのサーバーフォルダ内に「アプリ」およびその中に「かけ~ぼ」というフォルダを作成し、以下の9つのCSVファイルを格納する機能があります(Google Driveも対象となっていますが解説は割愛します)。このファイル群は、本来はスタンドアロンの家計簿アプリである「かけ~ぼ」のバックアップ手段として出力されるものですが、当Blogではこれらを利用して他の家計簿アプリとのデータ変換を行います。
-
budget.csv(予算設定)
-
※card.csv(クレジットカードおよび電子マネーの設定)
- ※cashbook.csv(家計簿の取引データ本体)
-
※cashbook_all.csv(家計簿の取引データをより充実させたもの。かけ~ぼV1.52から追加された)
- ※codeName.csv(帳簿のコード番号と名称の紐付けデータ)
-
dailymemo.csv(日記のデータ)
-
fixdata.csv(正体不明)
- ※items.csv(費目の名称、描画色などのデータ)
-
preference.csv(「かけ~ぼ」の設定)
_この中で、データ変換処理に直接関係するのは ※ のついた5つです。
_ちなみに、出力先となっている「かけ~ぼ」というフォルダ名は非常に不適切です。Excelでこのフォルダ名を参照すると「かけ?ぼ」となってしまい、様々な処理の場面でエラーを発生させる原因になりますので、筆者はこのフォルダと並列に「かけーぼ」というフォルダを作って、そちらに全ファイルをコピーして操作しています。 ここは新バージョンでも改善されなかった…!
(1)card.csv
_クレジットカードおよび電子マネーの設定データのファイルです↓。【登録タイプ】の列が重要で、
-
0:「利用日に登録」するクレジットカード
-
1:「請求日に登録」するクレジットカード
-
2:電子マネー
_となっているようです。
_また、↓の例では01財布・02財布という電子マネーが入っていますが、これは筆者が現金を電子マネーとして取り扱う実験をした後に削除したはずのもので、「並び順」=-99というのがそれを示しているようです。「かけ~ぼ」も削除したふりをして実は非表示にしているだけなんだな~というのがこれで判るわけです(代表的な例ではZaimもこういう処理をしています)。

(2)codeName.csv
_帳簿のコードとそれに対応する名称のデータです↓。

(3)items.csv
_「費目の名称、カラー設定等を保存しているデータです。I列に【割当】とあるのは…「かけ~ぼ」ではデータ入力画面で費目をフリック入力する機能があり、そのフリック入力の向きの割り当て状況を示しています。筆者はその機能を使用していないので空欄になっています。

(4)cashbook.csv
_家計簿の本体データですが↓、「かけ~ぼ」は帳簿・支払い方法(現金・クレジッカード・電子マネー)をコード番号で表現するため、このデータだけを読めば他の家計簿アプリ向けに変換できる…というわけにはいきません。面倒な方式を採用したものですなあ…
_かけ~ぼV1.52の出現により、MFFマクロではこちらのファイルを
MFF形式→「かけ~ぼ」 の変換の対象とし、「かけ~ぼ」→MFF形式
の変換は次のcashbook_all.csvに対して行います。
(5)cashbook_all.csv
_2020年8月16日にバージョンアップした「かけ~ぼ」V1.52.0で追加されたファイルです。前述のcashbook.csvに対して形式が大きく変更されています。なお、各データ列の解釈については、次のMFFマクロの処理内容の解説を参照してください。

2.MFFマクロによる「かけ~ぼ」→MFF形式変換処理の概要
_これまでの記事で述べてきましたとおり、「かけ~ぼ」はシンプルを標榜しているわりには複雑な動作をする家計簿アプリです。そのためMFFマクロによるデータ変換処理も結構面倒なことをさせられています。
_特に「コード番号主義」への対処としては、cashbook_all.csvをMFF形式に変換する際、card.csvとcodeName.csvの中身を配列に読み込んで、コード番号を具体的な口座名称に変換しています。そのため、cashbook_all.csvと同じフォルダにcard.csvとcodeName.csvの両方が格納されていることがマクロ動作の大前提となります。MFFマクロを動作させるときはくれぐれもご注意ありたく。
(1)収入・支出取引
_「かけ~ぼ」には品名・店名・備考といったデータ項目が無く、ユーザーが自由記入できるのは「メモ」欄のみです。そこで、MFFマクロでは、ユーザーが「かけ~ぼ」アプリ側でメモ欄に (品名)(@店名)(※備考) のMFF書式で入力してあれば、それぞれMFF形式の内容欄・取引先欄・メモ欄に分解し、これらのデータ項目を有している他の家計簿アプリ向けに変換できるようにしています。
_また、「かけ~ぼ」は費目は1階層のみですが、ユーザーが費目を「○○/△△」のように設定していれば、○○を第1階層、△△を第2階層に分解して、2階層の費目を扱える他の家計簿アプリ向けに変換できます。
_電子マネーによる支出である場合は、利用日に電子マネー口座からの支出となるようにデータ変換を行います。チャージについては後述します。
_クレジットカードによる支出の場合、MFFマクロでは、「かけ~ぼ」上でのクレジットカードを、独立した「口座」として取り扱います。支出であれば、(当該のカードを「請求日に登録」と設定している場合でも)利用日にその口座から支出したというデータに変換します。請求額の銀行口座からの引き落としのデータについては、「かけ~ぼ」V1.52以降からcashbook_all.csvに含まれるようになりましたので、変換処理の内容を後述します。

(2)電子マネーへのチャージ
_前回の「誰も教えてくれない「かけーぼ」での家計管理法(後篇)」で述べましたように、「かけ~ぼ」は電子マネーへのチャージの記帳の仕方が独特です。MFFマクロでは、電子マネーへのチャージは、帳簿の現金口座またはクレジットカード口座からの振替支出の形に変換するようにしています。また、MFFマクロのお約束として、その反対、つまり電子マネー口座に帳簿の現金口座またはクレジットカード口座から振替収入があったというデータをでっち上げます。

(3)帳簿間送金
_帳簿間送金についても、「かけ~ぼ」V1.52では大きな仕様変更がありました。
_それ以前では、「かけ~ぼ」の「帳簿Aの現金」→「帳簿Bの現金」の送金を、MFFマクロでは、帳簿A→帳簿Bの振替支出と、帳簿B←帳簿Aの振替収入という二つの取引データに変換しておりましたが、新バージョンでは、この2つのデータが「かけ~ぼ」側から出力されるようになったのです(支出側が先に、収入側が後の行となり、収入側では第12列に支出側取引のNoが入ります)。また、従来の金額欄が「支出」「収入」に分かれたので、MFFマクロではその数字をそのままMFF形式として入れなおすようにしました。処理がずいぶん簡単になりましたね。
_なお、前回の記事の最終段(8.誰も教えてくれない「かけ~ぼ」の応用技)で述べた「全ての現金・銀行口座・クレジットカード・電子マネーを帳簿として取り扱う」という運用法では、口座振込、ATM引落し、クレジットカード請求額の引落し、電子マネーへのチャージなど、あらゆる取引をこの帳簿間送金として記帳しなければならず、MFF形式に変換すると振替取引のデータばかりになって非常にウザいことになるでしょう。しかし、これは明示的に振替取引をサポートしていない家計簿アプリ向けにもデータを変換できるようにするためですので何卒ご理解ありたく。

(4)クレジットカードの引落しの場合
_「かけ~ぼ」V1.52から、cashbook_all.csv に含まれるようになった取引データです。このデータの場合は、第11列に、どのNo(第一列)の取引に対する引落しであるかを示す数字が入っています。MFFマクロは、この数字が入っていると「クレジットカードの引落し」のデータだと判断して↓のような振替取引に変換します。ただし、「かけ~ぼ」には銀行口座という概念が無いので、クレジットカードに紐付けられている帳簿の名称を帳簿コード欄から参照して、引き出し元の銀行口座を仮に入れるようにしています。
