How to abbreviate numbers in Excel?
When working with large datasets in Excel, it is common to encounter big numbers that can clutter your worksheet and make the data harder to read or analyze. For instance, presenting values like 1,234,567 or 12,000,000 can overwhelm your viewers, especially in dashboards or summary reports. In such cases, abbreviating numbers (e.g., converting 1234567 to 1.23M or 12000 to 12K) helps in enhancing clarity and maintaining a compact layout. This tutorial provides several practical solutions for abbreviating numbers in Excel, including built-in formatting, formulas, and VBA macros. Each option is suitable for different scenarios, depending on your preferences and workflow requirements.
![]() | ![]() | ![]() |
Abbreviate number | Abbreviate with Excel formula | Abbreviate numbers using VBA macro
Abbreviate number
One straightforward way to abbreviate numbers in Excel is by customizing the number formats through the Format Cells dialog. This method changes only the display of the numbers, not their underlying values, which means calculations using these cells remain accurate. It is especially useful for quick reports or when you need the numbers to refresh automatically without adding extra columns. However, keep in mind that this won't give you text results or allow mixed units (like M and K in the same column) with complex logic—formulas or macros are better for that.
1. Select the range of numbers you want to abbreviate. Then, right-click anywhere in the selected range and choose Format Cells from the context menu.
2. In the Format Cells dialog box, go to the Number tab, select Custom from the list on the left, and in the Type field enter: [>999999]#,,"M";#,"K" This custom format tells Excel to display numbers greater than 999,999 as millions (with an “M”) and all other numbers as thousands (with a “K”). See screenshot:
3. Click OK to apply the formatting. The numbers in your selected range will now display in an abbreviated form, which makes large datasets easier to scan and interpret at a glance.
Tip: If you only need all large numbers to be displayed as thousands (“K”), use #,"K" in the Type box. For millions only, use #,,"M". For billions or trillions, use #,,,"B" or #,,,,"T" respectively. To display millions and billions together with the correct unit, use [>999999999.999]#,,,"B";[>999999.999]#,,"M";#,##0 _M. Please note, number formatting is for display only and does not alter the value for calculations. If you need more customized logic, such as rounding, showing decimal places, or handling negatives, consider using a formula approach or a VBA macro.
Precautions: If your data includes values smaller than 1,000, they will be shown as the original number without abbreviation. This method cannot combine M and K within the same cell context, except through extended custom formatting, which has limitations. Be aware that formatted numbers still use the original value in underlying formulas, which can cause confusion when copying or exporting data.
Abbreviate numbers using Excel formulas (will convert to text)
If you want to display abbreviated results in a new column and need to customize the logic, such as displaying decimals (1.25M), handling mixed units (K, M, B, T), or controlling result as text, you can use Excel functions to generate dynamic abbreviations. This is also ideal when you want to freeze or manipulate the displayed text in other formulas or outputs.
Applicable scenarios: This method is best when you need text output, or advanced abbreviation logic not supported by custom formats. It is suitable for summaries, dashboards, or when sharing exported/pasted results.
1. Enter the following formula in the target cell (e.g., if your number is in cell A2, enter in cell B2):
=IF(ABS(A2)>=1000000000,TEXT(A2/1000000000,"0.00")&"B",IF(ABS(A2)>=1000000,TEXT(A2/1000000,"0.00")&"M",IF(ABS(A2)>=1000,TEXT(A2/1000,"0.00")&"K",A2)))
This formula checks the value in A2 and abbreviates it using B (billion), M (million), or K (thousand) as appropriate, showing two decimal places. Negative numbers are supported, and values less than 1,000 are displayed as-is.
2. Press Enter to confirm the formula. If you want to apply this to more rows, drag the fill handle down or copy the formula to other cells as needed.
Practical tips: To customize decimal places, adjust the "0.00" part in the TEXT
function (e.g., use "0.0" for one decimal). - If handling very large numbers (trillions or more), further extend the IF
pattern.
Precautions: - This creates text output, so numbers will not calculate correctly in SUM or other math formulas unless converted back. If you want to avoid trailing zeros (e.g., show "12M" instead of "12.00M"), use custom formatting within TEXT
.
Abbreviate numbers using VBA macro
For users wanting to fully automate number abbreviation throughout a range or apply custom rules not easily handled by formulas or number formatting, you can leverage an Excel VBA macro. This approach allows in-place replacement or addition of a new column with abbreviated results, and is suitable for repetitive tasks or processing large tables.
Best for: Automating abbreviation over large or dynamic ranges; custom, reusable workflows; batch processing of variable data layouts.
1. First, press Alt + F11 to open the VBA Editor in Excel. In the VBA window, click Insert > Module to create a new module and copy the following code into the module window:
Sub AbbreviateNumbersAddColumn()
Dim rng As Range
Dim cell As Range
Dim destCol As Range
Dim abbrevValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select the range of numbers to abbreviate", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
Set destCol = rng.Offset(0, 1).Columns(1)
For Each cell In rng
If IsNumeric(cell.Value) Then
If Abs(cell.Value) >= 1000000000 Then
abbrevValue = Format(cell.Value / 1000000000, "0.00") & "B"
ElseIf Abs(cell.Value) >= 1000000 Then
abbrevValue = Format(cell.Value / 1000000, "0.00") & "M"
ElseIf Abs(cell.Value) >= 1000 Then
abbrevValue = Format(cell.Value / 1000, "0.00") & "K"
Else
abbrevValue = cell.Value
End If
Else
abbrevValue = cell.Value
End If
destCol.Cells(cell.Row - rng.Row + 1, 1).Value = abbrevValue
Next
MsgBox "Abbreviated values written to the column to the right of the selection."
End Sub
2 To run the code, close the VBA window. In Excel, select the range of numbers you wish to abbreviate, then press F5 key or click Run. The macro will prompt you to select a range, then write the abbreviated results into the column immediately to the right of your original range.
Usage tips: Safe to use if you want to preserve the original data—results will appear in a new adjacent column. - You can modify the code to write results in place if you wish to overwrite the originals, but this is not recommended unless you have a backup.
Troubleshooting reminders: Ensure macros are enabled in your workbook. If your data includes text or blank cells, the macro will leave those unchanged. For custom labels (e.g., displaying "T" for trillions), adjust the If
blocks accordingly.
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
All Kutools add-ins. One installer
Kutools for Office suite bundles add-ins for Excel, Word, Outlook & PowerPoint plus Office Tab Pro, which is ideal for teams working across Office apps.





- All-in-one suite — Excel, Word, Outlook & PowerPoint add-ins + Office Tab Pro
- One installer, one license — set up in minutes (MSI-ready)
- Works better together — streamlined productivity across Office apps
- 30-day full-featured trial — no registration, no credit card
- Best value — save vs buying individual add-in