ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

通貨変数

OpenOffice のマクロで OpenOffice Basicを使っていたところ、計算した数値に誤差が入るようになってしまった。
例えば、0.2 が 0.19999 になるような感じ。普通に見ているとセルの書式の有効桁数で問題ないように見えるが、実際にそのセルを選択して中身を見ると誤差が含まれた値になってしまっている。
浮動小数点数の計算には誤差が含まれることは知っていたが、こんなにも簡単に出てしまうとは。
ということで、扱う変数の型を通貨変数へと変えることにした。これなら少数部を4桁の固定小数点方式で持つので誤差は出ない。
宣言の仕方は次の通り。

Dim Variable As Currency
Dim Variable@