Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> Excel、Access、VBA -> 【Excel】セルごとに小数点を切り捨てした合計を計算する方法

【Excel】セルごとに小数点を切り捨てした合計を計算する方法

タイトルの意味が不明ですが、
要するに、各セルごとに、小数点を切り捨てして、
その合計金額を計算したかったのです。

普通、round(sum(A5:D5), 0)とかで、合計金額を小数点切り捨てすることは出来ますが、逆に、各項目ごとに、掛け算をしたり、四捨五入や小数点切り捨てをして、さらに、その値を合計して、金額が上限を超えている場合は、超えないようにする、とかいう、複雑な処理を、エクセルの標準関数で実現するのは、ちと無理かな?という感じです(謎)

というわけで、セル内から呼べるマクロを作りました。

'セルごとに小数点を切り捨てした合計を返す。
'使い方:
'=sum_rounddown(A5:D5, 500, 10000)
'上記の場合は、A5からD5の各セルを、500でかけて小数点切り捨てした合計を返す。
'ただし、10000を上限とする。
Public Function sum_rounddown(range, price, max)
Dim cell As range
Dim sum As Single
sum = 0
For Each cell In range
sum = sum + Application.RoundDown((cell * price), 0)
Next cell
If sum > max Then
sum = max
End If
sum_rounddown = sum
End Function

この記事の最終更新日:2019/03/11
最初に記事を書いた日:2019/03/08

この記事をシェアする

このエントリーをはてなブックマークに追加

関連記事

Meteoric Streamについて

管理人

Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> Excel、Access、VBA -> 【Excel】セルごとに小数点を切り捨てした合計を計算する方法