「マネーフォワードME」から「Zaim」への家計簿データ移行方法

家計簿アプリのデータ移行をしたので、記事にしました。

うまく行かずに悩んだところもありましたが、自己解決できたので、やり方を載せています。

スポンサーリンク

なぜZaimへ移行したのか

下記理由のためです。

  • マネーフォワードMEの無料会員は、直近1年間の家計簿データしか見れないから(有料で使う気がなかった)。
  • Zaimは無料会員でもデータインポートが利用できるから(ただし、会員区分に限らず、サポート対象外)。

「サポート対象外」を要約すると「機能は残してあるけど、Zaimとしてはサポートできないから、使うなら自力で何とかしてね」という意味になります。

「そんなの酷い」と思う方もいるかも知れませんが、インポート機能があるだけでも、ありがたいのが現実です。家計簿アプリダウンロード数3強(らくな家計簿・マネーフォワードME・Zaim)の中で、家計簿データインポートが無料会員で利用できるのはZaimだけです。

マネーフォワードMEは無料・有料に関わらず、インポート機能自体が廃止されました。

らくな家計簿のインポート機能は有料会員限定です。

Zaimの登録期間

下記のようになっています。

無料会員有料会員
閲覧期間制限なし制限なし
データ
エクスポート
2年10年
銀行データ
・クレジットデータ
のエクスポート
含まない含む

無料会員は銀行データ・クレジットデータのエクスポートができません。利用するなら、有料会員での利用が必要です。

また、データエクスポートに関して、無料会員は過去2年間の縛りがあります。今後、どこかの家計簿アプリに乗り換える気がなくても、1年たったらデータをエクスポートして保管しておくと完璧です。

有料会員は10年間のデータエクスポートが可能なので、神経質になる必要はないでしょう。

データ移行に必要なもの・こと

Windowsパソコン

「マネーフォワードME」も「Zaim」も、スマホアプリはデータの入出力に対応していません。

パソコンのブラウザから各アプリへログインして、作業する必要があります。

Macパソコンでも作業できるとは思いますが、筆者は未所持のため未検証です。

筆者の環境はWindows10です。未検証ですが、Windows11でもやり方は変わらないと思います。

デスクトップ版Microsoft Excel

Excelのマクロ機能を使用しますので、デスクトップ版のMicrosoft Excelが必要です。

下記いずれのバージョンでも構いません。

  • デスクトップ版Excel単体
  • Office Personal
  • Office Home and Business
  • Office Professional

マクロ機能が使用できないOffice Online等では作業ができません。

筆者の環境はExcel2013、Excel2016です(どちらもOffice Home&Business)。

マネーフォワードMEへの有料会員登録

マネーフォワードMEで家計簿データをエクスポートするには、有料会員への登録が必要です。

マネーフォワードME:Google Playストア

マネーフォワードME:App Store

Androidスマホの場合、有料会員を初めて利用するアカウントの場合、1ヶ月間無料で登録できます。有料会員登録はスマホアプリからできます。支払いはGoogle Playを経由します。

定期購入の扱いになるので、有料会員登録時に支払い方法を指定する必要があります。Google Playの残高を確保しておくか、クレジットカードなどの支払い方法を登録する必要があります。

支払い方法を指定する際、初回請求日が表示されます。この日までに有料会員を退会すれば、費用はかかりません。日付を覚えておきましょう。

筆者はiPhoneは未所持のため、iPhone版の仕様はわかりかねますが、そんなに違いはないと思います。

Zaimへの無料会員登録

Zaimに乗り換えるので、Zaimの無料会員登録が必要です。

Zaim:Google Playストア

Zaim:App store

メールアドレスとパスワードで会員登録します。無料会員なので、支払いは必要ありません。

今回参考にしたホームページ

たこぶつさんのホームページを見ながら作業しました。

作業に使うVBAコードが配信されているほか、今回のケース以外にも様々な家計簿アプリの移行について網羅されています。

マジ凄いです(語彙力)。

たこぶつの家計簿アプリ研究所
家計簿アプリ間で相互にデータを変換する方法を研究するブログです。

具体的には、下記のページを読んで作業しました。

たこぶつの家計簿アプリ研究所:家計簿アプリ間データ変換ツール「MFFマクロ」公開中
https://takobutsu.blogspot.com/p/mff.html

たこぶつの家計簿アプリ研究所:マネーフォワードMEからダウンロードしたデータを他の家計簿アプリ向けに変換する
https://takobutsu.blogspot.com/2020/07/moneyforward004.html

たこぶつの家計簿アプリ研究所:Zaimに他の家計簿アプリから変換したデータをアップロードする
https://takobutsu.blogspot.com/2020/07/zaim006.html

作業手順

家計簿データの移行作業は、大きく以下5つのトピックに分かれます。

  • マネーフォワードMEから家計簿データをエクスポートする
  • MFFマクロExcelファイルを作成する
  • カテゴリーリストファイルを作成する
  • エクスポートデータの変換作業
  • Zaimへのインポート

以下の3つのファイルを準備して、Zaimへのインポート用ファイルを作ります。

  • エクスポートした家計簿データのまとめ
  • MFFマクロExcelファイル
  • カテゴリーリストファイル

マネーフォワードMEから家計簿データをエクスポートする

家計簿データのエクスポート

マネーフォワードMEの家計簿データをエクスポートします。

エクスポートが利用できるのは有料会員のみです。先に書いたように、そのアカウントでの有料会員登録が初めてなら、1ヶ月無料になりますので利用しましょう。

また、家計簿データのエクスポートは、1ヶ月分ずつしかできません。

複数月に渡る場合は、その月の分だけエクスポート作業を繰り返す必要があります。

スマホアプリで有料会員登録が終わったら、パソコンのブラウザからマネーフォワードMEへログインします。

「家計」のタブを開き、家計簿データをエクスポートしたい月を選びます。

ページ下の方にある、「家計簿データの出力(Excel、CSV形式対応)」の「ダウンロード」ボタンを押します。

「CSVファイル」と「Excelファイル」の選択肢が出てきます。選んだ方の様式で、データがダウンロードできます。

どちらの様式にするかは下記の考え方で選びます。

  • データが1か月分ならCSVファイル(このままマクロに読み込めるから)
  • データが複数月にわたるならExcelファイル(Excelでの編集が必要だから)

家計簿データが複数月にわたる場合は1つにまとめる

マネーフォワードMEからエクスポートした家計簿データが、複数月にわたる場合は、そのデータを1つのシートにまとめておく必要があります。全ての月のデータを時系列でつなげて1枚にします。

エクスポートしたデータを1つずつExcelで開いて、地道にコピー&ペーストを繰り返して、1つのシートにまとめましょう。

まとめた家計簿データをCSVで保存する

複数月にわたる家計簿データを1つにまとめたら、CSVでファイルを保存します。

Excelの「名前を付けて保存」を選んで、ファイル形式を「CSV(コンマ区切り)」で保存してください。

(「CSV UTF-8(コンマ区切り)」で保存すると、後々の作業で文字化けしてしまいます!)

ファイル名は任意で構いません。自分で理解できるファイル名をつけておきましょう。

MFFマクロExcelファイルを作成する

MFFマクロExcelファイルの作成

たこぶつさんの下記ページに、MFF(むふふ)マクロのコードが載っています。

MFFマクロの導入法と使用法
家計簿アプリ相互間データ変換ツール「MFFマクロ」をMicrosoft Excelに導入する方法、および使用方法について解説している。MFFマクロは、Excelのクイックアクセスツールバーに登録したアイコンをクリックすることで、そのときのワークシートの状態に応じた動作をするようになっている。

エクスポートした家計簿データを、インポート用のデータへ変換するためのマクロ(正確にはVBAコード)です。

これを使って、MFFマクロを搭載したExcelファイルをつくります。

上記ページリンクのMFFファイルをブラウザで開き、全コードをコピーして、Windowsアプリのメモ帳などへ貼り付けます。

次に、メモ帳に貼り付けた全コードをコピーします。

Excelで新規ファイルを開き、「開発タブ」の「Visual Basic」を開きます。

開発タブが出ていない場合

リボンの空いているところで右クリックして、「リボンのユーザー設定」を選びます。

右側の「開発」のボックスを選択して、チェックを入れます。

「OK」を選べば、開発タブが出ます。

以降は、常に開発タブが表示される状態になります。

画面左のツリーから「VBAProject(ファイル名)」を右クリックしてメニュー開いて、「挿入」→「標準モジュール」を選びます。

標準モジュールが挿入されて、ウインドウが開きます。先ほどメモ帳からコピーしたコードを貼り付けましょう。

後は、ファイルを保存してください。ExcelとVBAの2つのウインドウがありますが、どちらで保存しても構いません。同じことです。初めてファイルを保存する場合、自動的に「名前を付けて保存」になります。

ファイル名は任意で構いません。マクロを搭載したファイルなので、ファイルの種類は「Excel マクロ有効ブック」で保存します(これにより、ファイル拡張子は.xlsmになります)。

VBAのコードを1行追加する

筆者が利用させてもらったマクロコードはVer2.31でしたが、このままだと定義エラーによりマクロが動かない部分があるので、コードを1行追加します。

プロシージャ
Private Sub CSVファイル出力(家計簿ソフト名 As String, 文字コード As String)
のすぐに下の行に、次の一文を追加します。

Const adTypeBinary = 1

Visual Basicのモジュール内でも、「Ctrl+Fキー」で文字検索が使えます。Private Sub CSVファイル出力(家計簿ソフト名 As String, 文字コード As String)、を検索してください。

コードの追加は、あくまで今回の作業のためです。

たこぶつさんのMFFマクロは非常に多機能です。コードの追加が他の機能に影響を与えないかは分かりかねます。しかし、少なくとも今回の作業については、この1行が必要です。

カテゴリーリストファイルを作成する

カテゴリーリストの作成

Zaimの勘定科目に合わせて、カテゴリーリストをExcelファイルで作ります。

ここで作ったファイル(リスト)が、Zaimへインポートする際の勘定科目になります。

以下ページは、ACFマクロに関する説明がメインですが、カテゴリーリストについての説明と作り方が載っています。

ACF機能の動作と操作法
家計簿アプリ相互間データ変換ツール「MFFマクロ」には、口座名称および費目を変換する操作を支援する「ACF」機能を備えている。一種の学習機能により、家計簿アプリの費目構成に合致したデータをCSVファイルとして出力することができる。

作成したカテゴリーリストをCSVで保存する

カテゴリーリストが完成したら、「CSV(コンマ区切り)」で保存します。

ファイル名は

Zaimカテゴリーリスト

で保存してください。アルファベットは半角で、Zだけ大文字です(拡張子を含めると、”Zaimカテゴリーリスト.csv“というファイル名になります)。

ちなみに…。

誤って「CSV UTF-8(コンマ区切り)」で保存すると、後々マクロを動かした際に文字化けしてエラーが起きます。

また、ファイル名を間違えた場合もマクロが動きません。ご注意ください。

エクスポートデータの変換作業

「マネーフォワードMEから家計簿データをエクスポートする」の章でまとめたエクスポートデータを、Zaimへインポートできるデータに変換する作業です。

今回の作業の中で一番ボリュームがあり、メインとなる作業です。

この作業を始める前に、ここまでで作った3つのファイルを、同じフォルダに入れておきましょう。フォルダの場所はデスクトップで構いません。

  • マネーフォワードMEのエクスポートデータをまとめたCSVファイル
  • MFFマクロExcelファイル
  • Zaimカテゴリーリスト.csv

CSVで保存したエクスポートまとめデータをMFFマクロで読み込む

MFFマクロExcelファイルを開いて、MFFマクロを動かします

たこぶつさんのホームページでは、マクロのショートカットを作成していますが、それが無くても動かせます。

実際に動かしてみましょう。

Excelの「開発タブ」から「マクロ」を選択すると、ファイルに搭載したマクロを選んで、起動することができます。

2種類のマクロが表示されます。MFFを選んで、「実行」を選びます。

読み込むデータを指定されるので、「マネーフォワードMEのエクスポートデータをまとめたCSVファイル」を指定して、「開く」を選びます。

「マネーフォワードのデータをMFF形式に変換します」と表示されるので「はい」ボタンを選びます。

これにより、たこつぼさんが「MFF形式」と呼んでいるリストデータができあがります。以降の画像では、H列「内容」のカラムは塗りつぶしています(個人情報なので)。

ファイルを上書き保存しておきましょう。

ACFマクロを走らせて、ACF形式へ変換する

D1セルのドロップダウンリストから”Zaim”を選びます。

D1セルをアクティブにした状態で、「マクロ」を選択します。

ACFを選んで、実行を押します。

このとき「~Zaim変換リスト.csvが存在しません」というメッセージが表示されますが、無視して構いません。「OK」を選択しましょう。

これにより、たこつぼさんが「ACF形式」と呼んでいるデータリストに変換されます。

マクロが上記のように動かない場合、マクロExcelファイルと同じフォルダに、「Zaimカテゴリーリスト.csv」が保存されていない可能性があります。ファイル名が違っても、マクロは正しく作動しません。

Zaim用の勘定科目を登録する

マネーフォワードMEで入力した勘定科目(カテゴリとジャンル)のほとんどは、そのままZaimで使えません。

この時点で各データについてZaimへ移行する際の勘定科目を登録します。

L列・M列が、Zaimへ読み込む勘定科目です。水色セルは登録済みなので、黄色セルを登録していきます。

勘定科目の値は、ドロップダウンリストから選べるようになっていますので、手入力の必要はありません(この機能のために「Zaimカテゴリーリスト.csv」が必要なようです)。

L列のセルを選ぶと、セル右側にドロップボタンが出てきます。

ドロップボタンを選ぶと、リストが出てきます。該当する内容を選びましょう。

L列を登録すると、M列もドロップリストで登録できます。

ドロップリストが出てこない場合、「Zaimカテゴリーリスト.csv」の作り方が間違っている可能性があります。

なお、必ずしもデータを1つずつ全て登録していく必要はありません

例えば、1番目のカテゴリを「臨時収入」と入力してみます。

D1セルをアクティブにした状態で、ACFマクロを実行します。

すると、他のデータも「臨時収入」で埋まる部分が出てきます。

ACFマクロにより、「マネーフォワードMEで登録した勘定科目・内容」と「Excel上で登録したZaim用の勘定科目」を見て、同じ内容のデータがあれば、Zaim用の勘定科目を自動登録してくれます。

例に沿って言えば、1番目のデータは、マネーフォワードMEで「収入」「その他入金」という勘定科目になっていました(B列・C列で読み取れます)。そこに「臨時収入」というZaim用の勘定科目を登録しました。

ACFマクロによりデータがチェックされ、マネーフォワードMEの勘定科目が「収入」「その他入金」になっていて、かつ内容(H列)が一致するデータは、全て「臨時収入」というZaim用勘定科目が自動登録されたのです。

ACFマクロによる勘定科目の判定は、上にあるデータから順番に行われます。登録作業も上から順番にやりましょう。

L列とM列が全て水色になる(Zaimの勘定科目の入力が終わる)まで、作業を続けます。

ときどき、上書き保存をして、作業内容が消えないように進めましょう。

データをMFF形式へ再変換する

勘定科目を指定し終えたら、A1セルをアクティブにして、「マクロ」を開きます。

ACFを選んで、実行します。

この操作により、MFF形式リストへ再変換されます。

作業中のフォルダ内に「Zaim変換リスト.csv」というファイルが保存されますが、これは使いません

Zaimアップロード用のCSVファイルを保存する

D1セルをアクティブにして、マクロを開きます。

MFFを選んで、実行します。

CSVファイルの保存名を決めるよう促されます。ファイル名は任意で構いません(そのままで構いません)。ファイルの種類は「csvファイル」のまま、変更しないでください。ここでは、特に変更せず、そのまま保存しています。

「ファイルを出力しました、開きますか?」とメッセージが出ますが、ファイルを開く必要はありません。「いいえ」を選んでください。

このとき、作業中のフォルダに保存されたCSVデータが、Zaimへ読み込むためのファイルです。

後はZaimへのデータインポートを残すのみです。

Zaimへのインポート

冒頭にも書きましたが、Zaimは「サポート対象外」ながら、家計簿データのインポート機能が利用できます。

このインポート機能は、無料会員でも利用することができます。

インポート機能を使用するには、パソコンのブラウザ(ChromeやEdgeなど)からZaimにログインしてください。

インポートのテスト用データを準備する

いきなり全データをインポートした場合、何らかのミスがあった時の修正が大変です。

そのため、インポートのテストを行うことをオススメします。

Zaimへのインポート用CSVデータをコピーで複製します。

複製したファイルを編集して、テスト用データを作成します。

例えば、初めの5行だけを残して、残りの記録を削除します。ファイルをメモ帳から開いて、編集してください(Excelで開くと、データ形式が壊れる可能性が高いです)。

初めの1行はカラム名(列名)が入るので、この場合は残る4件のレコード(記録)だけでデータインポートを行うことになります。

5行以上でテストしても構いませんが、あまりたくさんのデータをインポートすると、本番前にデータを削除するのが大変です(なぜデータを削除するかは後述)。

インポートのテストを行う

パソコンのブラウザからZaimにログインします。画面右上の「設定」を開きます。

「ファイル入出力」を選びます。

「入力」の「Zaim の出力ファイルをアップロードする」を選びます。

指定欄とボタンが出てきます。「クリックしてアップロードするファイルを指定」を選ぶと、ファイル選択ウインドウが表示されるので、テスト用のインポートファイルを選びます。「アップロード」ボタンを選べば、データがインポートされます。

4行(=4件)の記録が正しくインポートされているか確認してください。

インポートテストで入力したデータを削除する

データのインポートテストがうまくいったら、インポートした4件のデータを削除してください。

なぜなら、Zaimのインポート機能は記録の「上書き登録」がないからです

本番データをインポートすると、記録が重複してしまいます。そのため、インポートテストで登録した4件の記録を手動で削除します。

インポートテストでたくさんのデータを入れた場合、記録の削除が大変な手間になります。少ないデータでテストを行うのは、そういう理由です。

Zaimに限らずとも、テストもせずに大量のデータをインポートで流し込むのは危険です。一般論として。

本番データのインポートを行う

インポートのテストがうまく行っていれば、本番データのインポートで失敗するリスクを下げられます。

先ほどと同じ手順で本番データをインポートします。

なお、データ量が増えるほど、インポートには時間がかかります

「インポート完了」の旨が表示されるまでは、ブラウザを閉じたりせず待ちましょう。多少動きが無くても、しばらく放置しておく方がいいです。

インポートが終わったら、家計簿データの移行は完了です。全てのデータが正しくインポートされたか、月ごとに集計結果をマネーフォワードMEと比較して確認しましょう。お疲れ様でした。

マネーフォワードMEの有料会員の解除を忘れずに

家計簿データが正しく移行できて、作業にやり直しが無ければ、マネーフォワードMEの有料会員を解除しておきましょう。

Google Playストア版で初月無料の場合、初めの1ヵ月が経った時点で月額料金が徴収されます(具体的な日付は、マネーフォワードMEアプリで有料登録した際に表示されます)。その1ヵ月が経つ前に有料会員を解除すれば、料金は取られません。

放っておくと、1ヶ月毎に会員料金が徴収されてしまいます。ご注意ください。

コメント

タイトルとURLをコピーしました