Excel

【Excel】エクセルで1000円単位(1000の位)で切り上げ・切り捨て・四捨五入(千円:金額・価格:関数やVBAマクロも)

当サイトでは記事内に広告を含みます
技術ブログ特化メルマガはこちら

この記事では、【Excel】エクセルで1000円単位(1000の位)で切り上げ・切り捨て・四捨五入(金額・価格:関数やVBAマクロも)する方法について解説していきます。

早速詳しく見ていきましょう!

 

エクセルで金額を1000円単位で切り上げする方法【1000の位:関数】

エクセルで金額を1000円単位で切り上げするには、ROUNDUP関数を使用します。

例えば、元データがB列にあり、C列に切り上げ後の金額を出力したい場合、C2セルに以下の数式を入力するといいです。

=ROUNDUP(B2,-3)

この数式の引数の意味は以下の通りです。

B2: 切り上げ対象の金額が入力されているセル
-3: 小数点以下の桁数。-3を指定することで、1000の位を四捨五入せずに切り上げます(つまり1000円単位)

 

元が1234.5の数値が2000と1000円単位で切り上げられました!

入力後、C2セルの右下をドラッグしてオートフィルすることで、B列の金額を一括で1000円単位の1000円単位(1000の位で)切り上げ処理できます。

 

VBA(マクロ)の場合

Alt+F11でVBE画面を開いて以下をコピペしましょう。

Sub RoundUp1000Yen()
    Dim lastRow As Long
    With ActiveSheet
        lastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
        .Range("C2:C" & lastRow).Formula = "=ROUNDUP(B2,-3)"
        .Range("C2:C" & lastRow).Value = .Range("C2:C" & lastRow).Value
    End With
End Sub

 

コードのポイント

・lastRow: B列の最終行を取得

・Range(“C2:C” & lastRow).Formula: C2からC最終行までに数式を一括入力

・ Range(“C2:C” & lastRow).Value: 数式を値に変換(数式から値に変えたい人はここを適用。数式のままの場合は、このコード削除でOK)

 

Alt+F8でマクロ選択画面を開きRoundUp1000Yen関数を実行すれば処理完了ですね。

 

エクセルで金額を1000円単位で切り捨てする【関数】

1000円単位の切り捨ては、ROUNDDOWN関数を使用します。

C2セルに以下の数式を入力します。

数値丸めはROUND~~関数シリーズと覚えておくといいですね(^^)/

=ROUNDDOWN(B2,-3)

 

この数式の引数の意味は以下の通りです。

B2: 切り捨て対象の金額が入力されているセル
-3: 小数点以下の桁数。-3を指定することで、1000の位を四捨五入せずに切り捨てします。

 

VBA(マクロ)の場合

Sub RoundDown1000Yen()
    Dim lastRow As Long 
    With ActiveSheet
        lastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
        .Range("C2:C" & lastRow).Formula = "=ROUNDDOWN(B2,-3)"
        .Range("C2:C" & lastRow).Value = .Range("C2:C" & lastRow).Value
    End With
End Sub

 

ROUNDUP関数をROUNDDOWN関数に変更した以外は同様です。

RoundDown1000Yen関数を実行します。

 

エクセルで金額を1000円単位で四捨五入する【関数】

1000円単位の四捨五入は、ROUND関数を使用します。

C2セルに以下の数式を入力します。

=ROUND(B2,-3)

この数式の意味は以下の通りです。

B2: 四捨五入対象の金額が入力されているセル
-3: 小数点以下の桁数。-3を指定することで、1000の位を四捨五入します。

 

 

VBA(マクロ)の場合

Sub Round1000Yen() 
    Dim lastRow As Long
    With ActiveSheet
        lastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
        .Range("C2:C" & lastRow).Formula = "=ROUND(B2,-3)"
        .Range("C2:C" & lastRow).Value = .Range("C2:C" & lastRow).Value
    End With
End Sub

 

ROUNDUP関数をROUND関数に変更した以外は同様です。

Round1000Yen関数を実行します。

まとめ エクセルで1000円単位で切り捨て・四捨五入(1000の位:金額・価格:関数やVBAマクロも)する方法

以上、エクセルで1000円単位の切り上げ・切り捨て・四捨五入する方法をご紹介しました。

関数を使えば簡単に一括処理ができ、マクロを使えばワンクリックで実行できます。

金額計算の際にぜひ活用してみてください。