

たびたびの質問大変申し訳ありません。
ACCESSのクエリデザイナにて、フィールド項目で計算を打ち込んでいるのですが、小数点切捨てがどうもうまく動きません。
式は以下のようなものです
Cint(年齢計算の式)
年齢計算の結果は小数になりますが、どうもこれを切り上げてくれているようなのです。
ROUND(年齢計算の式,0)
とやっても結果は同じでした。
いろいろためした結果は以下のような感じです
Cint(10.5) → 10
Cint(11.5) → 12
Cint(100.5) → 100
Cint(101.5) → 102
1の位が0だと切り捨て、それ以外だと切り上げになるのでしょうか?
う~む、ACCESSは本当使いにくいですね。。。
No.5ベストアンサー
- 回答日時:
[イミディエイト]
? Rounds(10.5,四捨五入)
11
? Rounds(10.5,切り捨て)
10
? Rounds(10.5,切り上げ)
11
? Rounds(10.4,四捨五入)
10
? Rounds(10.4,切り捨て)
10
? Rounds(10.4,切り上げ)
11
? Rounds(10.4445,切り捨て,3)
10.444
? Rounds(1110.4445,切り捨て,-3)
1000
Accessには、このような四捨五入、切り捨て、切り上げ関数はありません。
ならば、自作するという手があります。
'
' Rounds関数用
'
Public Const 四捨五入 = 0
Public Const 切り捨て = 1
Public Const 切り上げ = 2
Public Function Rounds(ByVal M As Currency, _
ByVal A As Integer, _
Optional D As Integer = 0) As Variant
Rounds = Sgn(M) * Fix(Abs(M) * 10 ^ D + Abs((A = 0) * 0.5@ + (A = 2) * (Int(M * 10 ^ D) <> (M * 10 ^ D)))) / 10 ^ D
End Function
これは、あくまでも私的に用いている Rounds関数です。
で、この関数でおよそのノウハウは判ります。
ですから、ちょっと Rounds関数の自作に挑戦されたらどうでしょうか?
No.4
- 回答日時:
> ひどい・・・
> そんな機能誰がのぞむのでしょうかね。。
これって、単に質問者さんが関数を間違えているだけなのでは?
「切り捨て」をしたいなら、Cint関数ではなく、Int関数です。
#3さんの言われている、Fix関数との違いは、
Int(-1.3) → -2
Fix(-1.3) → -1
です。ご参考まで...
No.3
- 回答日時:
CInt 関数は、丸めを行うものではなく
型変換のためのものです。
整数型に変換するのですが、
変換方法はアクセスまかせということになります。
他にも CLng、CDbl CCur 等々があります。
少数以下切捨てには、Int 関数、Fix 関数などを使います。
両者の違いなど、詳しくは、VBE のヘルプをご覧ください。

No.2
- 回答日時:
Round関数は銀行型の丸めをします。
Cint関数はもともと、数値を丸める関数ではなくて、データ型を整数型に変換する関数です。
四捨五入をするときは、自分で関数を作る必要があります。
例えば、小数点一位で四捨五入する場合、こんな風にできます。
Int(X+0.5)
Int関数は小数点以下を切り捨てる関数です。
似たような関数に、Fix関数がありますが、負数を丸めるときの動作が違います。もし負数も扱うなら、ヘルプをみて、どちらを使うのが目的にあっているのか検討してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 隣のセルが空白以外の場...
-
選択クエリを開けない
-
【ACCESS】未定義関数が発生。...
-
コンピューターで2進法が採用...
-
ACCESSでの時間外計算方法
-
整列の比較回数を表す数式でよ...
-
マクロボタンを押すと、ファイ...
-
VBAでエクセルシートを更新...
-
日付の大小の表現
-
excelで、セル内に文字が入力さ...
-
エクセルで最高値、最低値の日...
-
日付以外のデータを抽出したい...
-
「24日の0時」って・・・
-
回覧板の日付について質問です...
-
「時間」、「期日」、「日付」...
-
エクセルで数字から名前に変...
-
エクセルで縦書きルビの付け方
-
エクセルのチェックボックスを...
-
Excel関数 「日付を入力...
-
回転印の使い方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 隣のセルが空白以外の場...
-
コンピューターで2進法が採用...
-
エクセルで四捨五入ではなく、5...
-
【ACCESS】未定義関数が発生。...
-
Accessについて教えて下さい。
-
ファイルメーカーで学年を表示...
-
アクセスである時点での年齢を...
-
計算はaccessかexcelか
-
アクセスについて
-
Accessで子供の学年齢を求めた...
-
作業日報作成
-
エクセルで設定したのをアクセ...
-
ファイルメーカープロ8で生年月...
-
Accessの日付計算に関して
-
選択クエリを開けない
-
経過年数の求め方...
-
アクセスの式について
-
発効日から有効期限を求める式...
-
「桐」の定義について
-
mysqlとphpでのデータ表示について
おすすめ情報