2022/09/03

MFFマクロV2.38の便利機能:「MFF形式データの比較」について

_今回は、MFFマクロV2.38で新設した便利機能「MFF形式データの比較」についてご紹介します。二つの家計簿アプリから取り出してMFF形式に変換したデータを比較し、お互いに存在しない(日付・金額が一致しない)データを抽出して、残高不一致等の原因を調査する機能です。当Blogの主題が「家計簿アプリ間のデータ変換」にある以上、データ変換の結果が一致しているかどうかを確認するツールは必要かと思いまして作成しました。

1.比較するMFF形式データを準備する

_サンプルとして↓のようなデータを準備します。このデータはExcelブックの第一ワークシートに配置します。

MFFデータ比較ツール解説用元データ

_次に、比較対象のデータを第二ワークシートに配置します↓。第一ワークシートのデータとの差異は、

  • 4行目、8/12の459円の買い物の内容欄(シェービングクリーム)が空になっている
  • 7行目、8/12の120円のペットボトルの支出額が120円ではなく150円になっている
  • 第一ワークシートの11行目にあったチケットショップでの売却益のデータが抜けている
  • 16行目、8/11の「富士山のおいしい水」が"72明細分離用"口座からではなく"71給与振込用"口座からの支払いになっている

_の4か所です。赤文字は、判りやすいように筆者が色を入れました。

MFFデータ比較ツール解説用比較対象データ

2.MFFマクロの便利機能を動作させる

_Excelの操作を第一ワークシートに戻し↓、F1セル("COMMAND"が入っている)のプルダウンメニューから"MFF形式データを比較"を選択。セルカーソルをF1セルに合わせたままMFFマクロを動作させると、↓のようなダイアログが出現します。なお、ここでキャンセルするような機能は設けていません。この機能は、ただセルに黄色を塗るだけで、データそのものは何もいじらないからです。

_なお、この機能で比較するのは日付・支出・収入欄のみです。

第一ワークシートの元でMFFマクロを動作させる

3.データ比較の結果

_まず、第一ワークシート側の結果を解釈しましょう。

  • 7行目、ペットボトル130円のデータに黄色が塗られていない。これは、このデータが比較相手(第二ワークシート)に無いことを示している。第二ワークシートではここは150円になっているから。
  • 11行目の売却益も同様。このデータはそもそも第二ワークシートから抜けている。
第一ワークシートの比較結果

_次に第二ワークシートの結果を解釈します。

  • 4行目の日用品459円は第一ワークシートではシェービングクリームを買ったことになっているが、第二ワークシートでは内容欄が空になっている。しかし、内容欄は比較対象ではなく、日付と金額は合っているので黄色に塗られている
  • 7行目のペットボトルは第一ワークシートでは130円のところ、こちらでは150円のため「第一ワークシートには無いデータである」として黄色を入れていない
  • 16行目は、第一ワークシートが"72明細分離用"口座、第二ワークシートでは"71給与振込用"口座からの支払いになっているが、口座名も比較対象ではないので黄色を入れていない

_このように、日付と金額についてのみ、比較相手のワークシートに存在しないデータに「黄色を入れない」という形で比較結果を返すようにしています。

第二ワークシートの比較結果

_なお、この便利機能は…二つのデータの順序が狂っていても正しく動作します。ただし、実行速度はかなり遅く、データ量が多いほどより実行時間がかかります。原始的な手順で処理を行っているためですが、まあ頻繁に行う操作ではない、ということでご容赦ください。

注目の記事

家計簿アプリとデータをやりとりする際のファイル形式のまとめ

_今回の主題は…家計簿アプリとデータをやりとりするときに使用するファイルの形式について、です。筆者がこれまで MFFマクロ に対応させてきた家計簿アプリは27種類(Money通帳とあっと家計簿は別カウント)。まず、家計簿アプリからエクスポートする方向では↓のようになります。...

最近の人気トップ3