| Microsoft Access Club >SampleFile >インデックス >このページ >次頁 < 前項 | |
|
サンプルテーブルの作成下記のようなサンプルテーブルを作成します。
四捨五入を行う独自関数Functionプロシージャを作成します。 Function ShiSha5(dbl対象 As Double, lng桁数 As Long) As Double
Dim lng数値 As Long
lng数値 = 10 ^ Abs(lng桁数) ' --- A
If lng桁数 > 0 Then
ShiSha5 = Int(dbl対象 * lng数値 + 0.555555) / lng数値
Else
ShiSha5 = Int(dbl対象 / lng数値 + 0.555555) * lng数値
End If
End Function
解説
考え方
整数(>0)を5の倍数に切り上げる独自関数例えば、13なら15、99なら100、224なら225と云う具合に5の倍数に丸めます。下記にサンプルプロシージャを記述します。特に難しいことは無く、クエリ等に対象数値と何桁の位を切り上げるのかを指定します。 Function Seishu5(dbl対象 As Double, lng桁数 As Long) As Long
Dim by数値 As Byte
dbl対象 = Int(dbl対象) ' --- A
by数値 = CByte(Right(dbl対象, lng桁数))
If dbl対象 > 0 Then
Select Case by数値
Case 0 To 4
Seishu5 = dbl対象 + (5 - by数値)
Case 5
Seishu5 = dbl対象
Case 6 To 9
Seishu5 = dbl対象 + (10 - by数値)
End Select
Else
Seishu5 = dbl対象
End If
End Function
解説
考え方
クエリフィールドに配置下記のようにクエリをデザインビューで開き、プロシージャを記述します。
実行結果クエリ結果(※四捨五入は、小数点第2位を基準に行っています)
関連ページ
|