I believe you will need to make this function yourself, as follows (I'm not aware of a function in VBA which works as Excel's native Round function, which allows you to round to the nearest 1000 etc):

Sub add_round()

Dim rng As Range
    For Each rng In Selection
        rng.Value = Round(rng.Value / 10000, 0) * 10000
    Next rng

End Sub

Alternatively you can tell VBA to use the native Excel function like this:

Sub add_round()

Dim rng As Range
    For Each rng In Selection
        rng.Value = Application.WorksheetFunction.Round(rng.Value, - 4)
    Next rng

End Sub
Answer from Grade 'Eh' Bacon on Stack Overflow
๐ŸŒ
Sitestory
sitestory.dk โ€บ excel_vba โ€บ round-up.htm
Round to nearest hundred, thousand etc. with VBA macros
VBA function to round (up) to nearest 100, 1000 etc. Useful for e.g. automatic scaling of a chart's Y axis.
๐ŸŒ
Statology
statology.org โ€บ home โ€บ how to round up values in vba (with examples)
How to Round Up Values in VBA (With Examples)
March 14, 2023 - You can use the RoundUp method in VBA to round values up. ... This particular example will round up the value in cell A1 to the nearest whole number and display the result in cell B1.
Discussions

RoundUp to nearest 1000 using VBA
Im trying to make a value roundup to nearest 1000 but i can't make it work even tryinh different ways. Im using Office 97 and help seem to offer no solution on this.... The nearest i got to a solution is by searching the board and come up with commands like MRound and RoundUp but they don't... More on mrexcel.com
๐ŸŒ mrexcel.com
24
0
June 20, 2003
Excel VBA Rounding - Stack Overflow
I believe you will need to make this function yourself, as follows (I'm not aware of a function in VBA which works as Excel's native Round function, which allows you to round to the nearest 1000 etc): More on stackoverflow.com
๐ŸŒ stackoverflow.com
Excel Rounding VBA - Stack Overflow
I have written some vba code that selects a range from a workbook and copies it to a cell in another workbook. My employer wants for this second workbook to be automated so there can be no messing ... More on stackoverflow.com
๐ŸŒ stackoverflow.com
VBA Rounding a variable to the nearest ten thousand
vInt = WorksheetFunction.MRound( value , 10000) More on reddit.com
๐ŸŒ r/excel
10
3
January 25, 2017
๐ŸŒ
Microsoft Learn
learn.microsoft.com โ€บ en-us โ€บ office โ€บ vba โ€บ language โ€บ reference โ€บ user-interface-help โ€บ round-function
Round function (Visual Basic for Applications) | Microsoft Learn
March 29, 2022 - ?Round(0.12335,4) 0,1234 ?Round(0.12345,4) 0,1234 ?Round(0.12355,4) 0,1236 ?Round(0.12365,4) 0,1236 ?WorksheetFunction.Round(0.12345,4) 0,1235 ?WorksheetFunction.RoundUp(0.12345,4) 0,1235 ?WorksheetFunction.RoundDown(0.12345,4) 0,1234 ?Round(0.00005,4) 0 ?WorksheetFunction.Round(0.00005,4) 0,0001 ?WorksheetFunction.RoundUp(0.00005,4) 0,0001 ?WorksheetFunction.RoundDown(0.00005,4) 0 ... Have questions or feedback about Office VBA or this documentation?
๐ŸŒ
MrExcel
mrexcel.com โ€บ forums โ€บ question forums โ€บ excel questions
RoundUp to nearest 1000 using VBA | MrExcel Message Board
June 20, 2003 - <font face=Courier New><SPAN style="color:#00007F">Function</SPAN> MRound(Number <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">Double</SPAN>, Multiple <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">Double</SPAN>) <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">Double</SPAN> <SPAN style="color:#00007F">Dim</SPAN> dblDivided <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">Double</SPAN> <SPAN style="color:#00007F">Dim</SPAN> dblIntDivided <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">Double</SPAN> dblDi
๐ŸŒ
YouTube
youtube.com โ€บ watch
Excel VBA to round off Numbers to nearest 10, 100, 1000, and rounding decimals to 2 places - YouTube
This Excel VBA Tutorial explains Rounding off numbers, rounding of decimals using VBA Code.You can learn how to use Round, RoundUp, RoundDown and MRound func...
Published ย  February 6, 2021
Find elsewhere
๐ŸŒ
Exceldome
exceldome.com โ€บ home โ€บ solutions โ€บ round to the nearest thousand | excel, vba
Round to the nearest thousand | Excel, VBA
August 15, 2018 - 'apply the formula to round to the nearest thousand ws.Range("D5") = Application.WorksheetFunction.Round(ws.Range("B5"), ws.Range("C5")) ... OBJECTS Worksheets: The Worksheets object represents all of the worksheets in a workbook, excluding chart sheets. Range: The Range object is a representation of a single cell or a range of cells in a worksheet. PREREQUISITES Worksheet Name: Have a worksheet named Analysis. Value to Round: If using the exact VBA code ensure that the value that you want to round to the nearest thousand is captured in cell ("B5")....
๐ŸŒ
Reddit
reddit.com โ€บ r/excel โ€บ vba rounding a variable to the nearest ten thousand
r/excel on Reddit: VBA Rounding a variable to the nearest ten thousand
January 25, 2017 -

Hello r/excel! I am trying to round a variable (y) to the nearest ten thousand. For example, I will set y = to the max of a range. Let's say the max comes to 255,084 dollars. I'd like to round this number to 260,000. Is this possible? Below is my VBA thus far...

Sub SGA_Consolidate()
Application.ScreenUpdating = False

Dim y As Long
y = WorksheetFunction.Max(Range("C26:N27"))


    Sheets("SG&A").ChartObjects("Chart 4").Activate
    ActiveChart.Axes(xlValue).Select
    ActiveChart.Axes(xlValue).MaximumScale = y + 50000


Sheets("SG&A").Range("A1").Select

Application.ScreenUpdating = True
End Sub
๐ŸŒ
Automate Excel
automateexcel.com โ€บ home โ€บ vba round, roundup, rounddown้–ขๆ•ฐ
VBA Round, RoundUp, and RoundDown Functions - Automate Excel
March 16, 2024 - VBA does not have a Ceiling.Math function equivalent, so if you want to round a number up to the nearest integer or to the nearest specified multiple of significance, then you can call Excelโ€™s Ceiling.Math worksheet function from your VBA code.
๐ŸŒ
eFinancialModels
efinancialmodels.com โ€บ home โ€บ business plan โ€บ discover how to enhance your excel rounding to nearest 100
Discover How to Enhance Your Excel Rounding to Nearest 100
June 27, 2025 - Hereโ€™s a quick glimpse of using VBA for rounding: Sub RoundToNearestHundred() Dim rng As Range For Each rng In Selection rng.Value = Application.WorksheetFunction.Round(rng.Value / 100, 0) 100 Next rng End Sub ยท This small macro rounds selected ...
๐ŸŒ
Excel Forum
excelforum.com โ€บ excel-programming-vba-macros โ€บ 610080-round-all-numbers-in-entire-sheet-to-nearest-1000-a.html
round all numbers in entire sheet to nearest 1000
Is there a way to type all the numbers in normally, and then have a macro that changes all cells containing numbers to the nearest 1000? Example: In cell A1 I type in "12,300" and then in cell A2 "1,250,700". Then I run a macro and all cells in the sheet that contain numbers are rounded to the nearest 1000.
๐ŸŒ
Wall Street Mojo
wallstreetmojo.com โ€บ home โ€บ all blogs โ€บ vba resources โ€บ vba roundup function
VBA Roundup Funciton to Round Up Numbers in Excel
December 23, 2024 - This code will convert the number to the nearest thousand, i.e., 1000. Like this, we can use the ROUNDUP function in VBA as part of the worksheet function class to round up the numbers based on the provided second argument.
๐ŸŒ
Stack Overflow
stackoverflow.com โ€บ questions โ€บ 24777752 โ€บ how-to-round-down-a-number-to-nearest-hundred-in-vba
How to round down a number to nearest hundred in VBA? - Stack Overflow
I need to round down a number to nearest hundred like these: For example: 54678 become 54600 54611 become 54600 54699 become 54600 Any idea? thanks!
๐ŸŒ
TechOnTheNet
techonthenet.com โ€บ excel โ€บ formulas โ€บ round_vba.php
MS Excel: How to use the ROUND Function (VBA)
This Excel tutorial explains how to use the Excel ROUND function (in VBA) with syntax and examples. The Microsoft Excel ROUND function returns a number rounded to a specified number of digits. Please note that the WS version of the ROUND function has different syntax.
๐ŸŒ
Arab Psychology
scales.arabpsychology.com โ€บ home โ€บ how to round down numbers in vba using int and fix
How To Round Down Numbers In VBA Using Int And Fix
November 20, 2025 - You can use the RoundDown method in VBA to round values down. ... This particular example demonstrates how to call the RoundDown method, accessing the value stored in cell A1, instructing the function to round it down to the nearest whole number ...
๐ŸŒ
MrExcel
mrexcel.com โ€บ forums โ€บ question forums โ€บ excel questions
macro to Round any number to nearest hundred | MrExcel Message Board
February 12, 2005 - The general rule to round any number x to any number m is Round(x/m,0)*m Also note that by design the VBA Round function returns slightly different results from XL's Round (accessed in VBA via Application.WorksheetFunction.Round()] Check the ...
๐ŸŒ
Software-solutions-online
software-solutions-online.com โ€บ home โ€บ rounding with vba and excel: functions and gotchas
Rounding with VBA and Excel: Functions and Gotchas - VBA and VB.Net Tutorials, Education and Programming Services
April 14, 2021 - Should you use -2, the answer would be 100 โ€“ as it would round UP the 33.333 to the nearest 100. Similarly, if you use -3 โ€“ the answer would be 1000; and -4 10000