- ベストアンサー
ACCESS2003で長整数型のフィールドに小数を入力した場合の動作について
お世話になります。 色々調べてみたのですが分からなかったので質問させて頂きました。 ACCESS2003のテーブル(またはフォーム)で長整数型のフィールドに小数を入力すると、銀行型の丸め?(ex 1.5→2、2.5→2)になってしまいますが、これを通常の四捨五入にすることはできないのでしょうか? よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ちょっと手遅れだったかもしれませんが・・・ データ型は整数型のままでも可能です。 テーブルの場合は難しいと思いますが、フォームの場合はテキストボックスで処理すれば整数型のままでもうまく行きました。 テキストボックスの更新後処理のイベントプロシージャ Private Sub テキスト0_AfterUpdate() If IsNumeric(Me.テキスト0.Text) Then Me.テキスト0.Value = Int(0.5 + Me.テキスト0.Text) End If End Sub AfterUpdateの時点で、Valueには既に丸められた結果が入っていますが、Textには入力したデータ(丸められる前)が残ってます。それを利用して計算しています。(Access2000で動作確認)
その他の回答 (1)
- CHRONOS_0
- ベストアンサー率54% (457/838)
回答No.1
組み込みの動作を変えることはできないでしょうね 小数点数のままで入力しておいて(もちろん浮動小数点型で)、 自分で四捨五入するしか方法は無いのでは
質問者
お礼
お返事どうもありがとうございました。やはり出来ないのですか。。 フィールドのデータ型を整数型→倍精度浮動小数点型に全部変更して、四捨五入する関数を作ってAfterUpdateプロパティに設定する。という方法で対処いたしました。
お礼
お返事どうもありがとうございました。 なるほど~こういう方法が出来るのですね! 今回はフィールドの型を整数→倍精度浮動小数点に変更して 対処してしまいましたが、次回からはこちらの方法を参考にさせて頂きます。ありがとうございます。