2022/09/24

MFFマクロの操作マニュアル のページを新設しました

_MFFマクロは、さまざまな機能を有しているにもかかわらず、これまでそれぞれの機能を個々に解説しているだけで「どんなときに、どんなことをすると、どうなるのか?」という総合的な説明を怠っておりました。先日の 2022/09/10 Dr.Walletのレシートデータを「らくな家計簿」にインポートすると順序が変わってしまう謎を解く からの連載でその問題に気づかされまして、今回、固定ページに追加いたしました。ぜひご参照ください。

2022/09/20

MoneyPro突然死の原因はどうやらインポートするファイル名に2バイト文字を入れていることにあるらしい

_2022/09/19のMoneyProにCSVファイルをインポートしようとすると突然死するようになった件ですが、Money Pro開発元のiBear.LLCとメールをやり取りしている間に、原因らしきものを発見しました。

_iBear.LLCに、インポートしようとしたCSVファイルを送る際に、日本語入りのファイル名だと相手側が迷惑するかもしれない、と考えてファイル名を1バイト文字のみにして送ったのですが、「もしかすると…」と思いついてそのファイルをMoneyProに取り込んでみますと…突然死は起きませんでした。

_MoneyProは、インポートの際に、CSVファイルのデータ列の割り付けを指定するダイアログを出してきます。最初の1列目の割り付け指定のダイアログの段階ではファイルは読めています。しかし、ここで【次へ】ボタンを叩くと…MoneyProはここでもCSVファイルを読みに行くようでして、第2列目の割り付け指定のダイアログを出す前に突然死していたわけです。

_つまり、第2列目以降を割り付ける際にCSVファイルを読み込むプログラムに問題がありそうです。しかも、これはV2.7.5では発生していなかった(2021/01/07 MoneyProの目標管理機能ってナニ?で確認済み)ので、それ以降のバージョンでエンバグしたものと考えられます(【2022/10/16追記】:開発元からは「そのあたりはいじっていない」と否定されましたが)。

_現在、これらの情報を開発元に提供して対処を待っています(【2022/10/16追記】:打ち切りました)。が、MFFマクロがMoneyPro向けに出力するCSVファイルのデフォルトのファイル名に全角文字を入れないように対策する必要はありそうです。当面は、ファイル名指定のダイアログでユーザー各位が修正してください。→MFFマクロV2.40で対処しました。

_ところで、CSVファイルを読み込むプログラムが改変された、ということは…2020/10/11 MoneyProアプリのV2.5.4バージョンアップでも不具合は解消せず で指摘した「CSVファイルインポート時に、収入取引のデータにカテゴリーを指定してもまともに取り込めない」というバグが修正されたのか? と一瞬期待しましたが、それは修正されていないままでした。残念~!

_【2023/07/09追記】:これらのバグはV2.8.35(?)で解消されましたので、MFFマクロV2.43で対応しました。

2022/09/19

MoneyProにCSVファイルをインポートしようとすると突然死するようになった件

_すでにTwitterで速報した内容ですが…

_MoneyProのWindowsアプリ版にデータをインポートする方法については、これまでに以下の記事でご紹介してまいりました。

_その後、個人的にいろいろありまして、しばらくMoneyProを触っていなかったのですが…先日、久しぶりにデータをインポートしようとしたら、とんでもない事態になっておりました。

_インポートするCSVファイルを指定すると「第一列は日付なんだな?」という意味のダイアログが出てくるまでは良いのですが、ここで【次へ】ボタンを叩くと、アプリが突然死するのです。本来は「第二列はカテゴリーなんだな?」という意味のダイアログに移行するはずです。

MoneyProにCSVファイルをインポートしようとすると突然死するようになった

_なお、インポート用CSVファイルの列の並びが影響しているのか?と考え、配列を何通りか変えてインポートを試しても、必ず2列目の割り付けを確認する前の段階でアプリが落ちます(ダイアログが消えるのではなく、メインウィンドウもろとも消えてしまう)

_現在のMoneyProのバージョンは↓V2.8.31。いつからこうなってしまっているのかは不明ですが、少なくともV2.5.4V2.7.5ではこの症状はありませんでした。

MoneyProのバージョン情報

_なお、2020/05/31 MoneyProにOFXファイルを取り込む方法 でご紹介したとおり、OFXでのデータ取り込みは可能ですが、凄まじい手間がかかります。CSVファイルで取り込めないとなるとMoneyProは死んだも同然。しかも、かつてできたことができなくなるというのは論外の外の靴の裏です。

_MoneyPro開発元のiBear.LLCには日本語版公式サイトの連絡フォームを通じて通報しましたが、果たして言わんとすることが通じるだろうか…

_【2023/07/09追記】:このバグはV2.8.35(?)で解消されましたので、MFFマクロV2.43で対応しました。

2022/09/18

Dr.Walletのデータを、順序が変わらないように「らくな家計簿」にインポートする方法を検討する(後篇)

前篇では

  • 「らくな家計簿」にカテゴリ構成を設定(収入分類として「値引き分」を追加)
  • ACF機能で使用する設定ファイル"らくな家計簿カテゴリーリスト.csv"を作成
  • Dr.WalletのデータをMFF形式に変換し、値引きに相当するデータのカテゴリを「値引き分」に修正

_ここまでの手順を解説しました。今回の後篇では、

  • ACF機能を使って費目と口座名を変換
  • MFFマクロで「らくな家計簿」にインポートするTSVファイルを出力
  • 「らくな家計簿」で一括確定させてデータを取り込み

_と進みます。

4.ACF機能による費目と口座名の変換

_データが再びレシート単位に並んだら、次に「値引き分」以外の費目を「らくな家計簿」と一致させる作業を行います。D1セルのプルダウンメニューで「らくな家計簿」を選択し、D1セルの中身が「らくな家計簿」に変わったら、セルカーソルをD1セルに合わせたままACF機能を動作させます。

らくな家計簿を対象にACF機能を動作させる

2022/09/17

Dr.Walletのデータを、順序が変わらないように「らくな家計簿」にインポートする方法を検討する(前篇)

_前回の 2022/09/10 Dr.Walletのレシートデータを「らくな家計簿」にインポートすると順序が変わってしまう謎を解く では、

  • (データ出力元)Dr.Walletは、商品の価格を負の値、値引き額を正の値として同じカテゴリに計上するようにレシートデータを入力するようになっている
  • (データ入力先)らくな家計簿は、データをインポートする際に、アプリに未登録の資産・分類(カテゴリ)を含むデータがあった場合はその場で追加・修正をして、支障が無くなったデータから順次確定させることができる

_以上の二点を見出しました。

_このような両者の仕様が絡まって、Dr.Walletのデータをそのまま らくな家計簿 にインポートしようとすると、

  • らくな家計簿に、支出・収入に同じ名称の「分類」(カテゴリ)ができる
  • らくな家計簿にインポートする際、確定させた順序によりレシートデータの並びが変わる

_という事態が発生するわけです。

_本件におけるユーザーHさんの要望は「Dr.Walletのデータを『らくな家計簿』にインポートする際に、同じ日の異なるレシートのデータが混ざって並んでしまうのをなんとかしたい」というものでした。今回はその方策を検討します。

1.らくな家計簿側の準備

_まず…らくな家計簿側の分類(費目のこと)構成を変更します(もちろん、その前に全データを初期化しておきます)。 「らくな家計簿」の費目構成は突っ込みどころだらけであり、また、Hさんは「ファイナンシャルプランナーが作った家計簿」(以下、FP家計簿)のデータも「らくな家計簿」に取り込むことを望んでおられるので、今回の例ではFP家計簿のカテゴリ構成に合わせます。

_なお、らくな家計簿は大分類の下に小分類を設定することができますが、今回はその機能はOFFにして、FP家計簿の「費目」のみのカテゴリ構成とします。また、Dr.Walletのデータに含まれる値引きを正しく記帳するため、収入分類に「値引き分」を追加します。

らくな家計簿の分類構成をFP家計簿に合わせる

2022/09/10

Dr.Walletのレシートデータを「らくな家計簿」にインポートすると順序が変わってしまう謎を解く

_皆様こんにちは。

_7月から、Hさんという読者の方から「Dr.Walletのデータを『らくな家計簿』にインポートする際に、同じ日の異なるレシートの内容が混ざってしまうのをなんとかしたい」というご相談を受けておりまして、そのニーズに応えるための研究を重ねてまいりました。

_当初、筆者はMFFマクロの動作に原因があるのか、と考えてマクロを改修(2022/08/07 MFFマクロV2.38出現)しましたが、実は残念ながらこれだけでは解決しませんでした。

_結論から言えば、これは Dr.Wallet と らくな家計簿 の両者の仕様が絡み合った結果生じていた現象だったのです。その内容と解決策について、これから数回の連載で解説します。

1.Dr.Walletのデータを変換する

_Dr.Walletからダウンロード(その方法は 2020/09/12 Dr.Walletのデータを他の家計簿アプリ向けに変換する方法 を参照)したデータを抜粋したものを↓に示します。同じレシートに記帳されているデータに対しては同一のレシートIDが付与されていることが判ります。

Dr.Walletからダウンロードしたデータ

_↑のデータをExcelで開いた状態でMFFマクロ(V2.38以降)を動作させると、MFF形式に変換されます↓。V2.38から、ID欄に入るレシートIDの枝番の振り方を"-NNN"のように改善しております。データの順序はこの時点では変わっていません。

2022/09/05

MFFマクロのバージョンアップ手順の解説を固定ページに追加しました

_固定ページ「MFFマクロのバージョンアップの手順」を新設しました。MFFマクロは頻繁にバージョンアップを行っているのに、これまで、導入済の環境においてどうやってVBAプログラムをアップデートするのか解説をしておりませんでした。大変申し訳ございません。今更ながら説明を付け加えましたので是非ご覧ありたく。

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