There are a few default rules in Excel that can annoy you. One of those rules is you can’t add a zero before a number.
The reason behind this is that a zero before a number makes no sense and has no value to the number itself.
Whenever you try to insert a zero before a number, Excel removes it and you’ll only get the number starting from an actual number.
Now the thing is: There are some unique situations where we need to add a zero before a number and we want that zero should stay there.
For example, phone numbers, zip codes, invoice numbers, etc.
So today in this post, I’d like to share with you 5 different methods which we can use to add leading zeros in Excel.
Convert a Number into a Text for Adding Zeros
Here is a thing if you change the format of a cell from number to text then you can add a leading zero without any problem.
This way Excel will not treat your number as an actual number and will not delete any zero from it.
- Select the cells in which you want to add the leading zeros.
- Go to Home ➜ Number ➜ Change the number format to text.
Now you can easily add zeros at the start of the numbers. You can’t use these numbers further in any type of calculation because they are now in text format.
Use Concatenate Function to Add a Zero
If you want to insert fixed numbers of zeros before a number, you can use concatenate function.
With CONCATENATE function, you are combining zeros with actual numbers. You can use a formula like the one below to add a zero before numbers in a cell.
=CONCATENATE("0","123458")
You can’t use these numbers further in any type of calculation because they are now in text format.
Add Dynamic Leading Zeros with REPT Function
REPT is one of my favorite Excel functions which can repeat a text a number of times.
=REPT(0,7-LEN(B5))&B5
In the above example, we have used REPT to get a total of 8 digits in a cell.
This is a dynamic formula to get zero before the numbers. You can’t use these numbers further in any type of calculation because they are now in text format.
Use TEXT Function to Add Leading Zeros Format
You can also use the TEXT function to add leading zeros.
=TEXT(B6,"0000000")
In the above example, we have converted a number into a text in which you will always get 7 digits.
In the text function, you just have to refer to the cell which has the value and then the format as I have specified in the above example. You can’t use these numbers in any type of calculation because they are now in the text format.
Apply Custom Format with Leading Zeros
If you don’t want to use any formula and all other methods, you can apply a custom format to a cell. I believe this is the best method to use and it has an additional benefit over all the other methods.
- Select the cell in which you want to add zeros as a prefix.
- Right-click ➜ Format Option or you can also use the shortcut key Ctrl + 1 open “Format Cell Dialog Box”.
- In Category ➜ Select Custom.
- In the custom input dialog box, enter “0000000”.
- Click OK.
In the above example, we have formatted the cells with 7-digit numbers in which you will always get 7 digits. If you have 5 digits number rest of the 2 will be zeros at the start.
If you check Excel’s formula bar, you have the actual number value in the cell and you can use this number for calculation which is not possible in the rest of the methods.
Get the Excel File
Conclusion
Most of the time you need to insert a zero before a number when we are dealing with some specific type of numbers i.e. invoice numbers, mobile numbers, zip codes, etc.
With normal numbers, this kind of situation never arises because we are more into calculation not about the format.
But if it arises, you have now 5 different methods to deal with it and I hope these methods will help you but now tell me one thing.
Do you have any other method to add leading zeros before a number?
Make sure to share your views with me in the comment section, I’d love to hear from you. And please, don’t forget to share this post with your friends, I am sure they will appreciate it.
after custom formatting my numbers start at 000002, when I select “fill in series” the next number is 000012… how do I get it to increment by 1 number only… should be 000003?
Thank you so much. It is amazing.
This was not helpful
Excellent!!
Very much informative. thanks a lot.
Hi Puneet,
Excellent work. Keep it up.
i found the 3rd option (REPT function) the best. you can customise the length of the number by linking “7” in the example shown to a cell with value of desired length.
All the Best.
Very useful tips, I can add “0“ to my number in Excel for the first time thank you.
Hi,
I have this formula for date value =A1-Date(Year(A1),1,0) everything works fine. range A1 contains 01/01/2019. but when I modified the code =”LTL”&A1-(Date(Year(A1),1,0)&”/”&Text(A1,”yy”) for my wish “LTL001/19”. the return value has no leading zeros like “LTL1/19”.
the text “LTL” and “/” are static. 001 change if days changed, 19 also change if years changed
what should I do for fix this?
thanks in advance.
how can we get the same no. in fx coloum after adding the 0
You can also use the ‘ before a number e.g ‘01233
Hi Puneet
My variation on your number 3 is
=right(REPT(“0”,99)&A1,FieldLength)
where Fieldlength is a named value (or you can refer to a cell if you prefer).
The reason I prefer it is that you only have to point to one cell when creating it,
and can amend the length from a single place even if the formula is scattered all over your workbook.
Keep up the good ideas, I really appreciate your approach.
Best wishes
Adrian
When you load a file where an apostrophe has been used, or the column has been formatted as text, Excel will still convert it to a number and drop off the leading zero(s). I don’t have control over the files I receive.
hello to everyone from Italy.
‘02345
i use the apostrophe in front of the number
My issue is loading csv files. The number can be formatted and saved with leading zeros, and even have inverted commas, but Excel converts them back to ordinary numbers when you reload the file.
Format the columns where you want to enter csv numbers as text. Highlight the columns, then Ctr+1, then select text and click ok.
Thanks Baah.
However, mine is an automated process where the invoice/account numbers are of differing lengths and may have differing numbers of leading zeros which I have now lost irretrievably.
Hi puneet, you are awesome. You have really made excel as very enjoyable.
For leading zero – I always use ‘ (apostrophe) before typing in any number. The cell retains whatever you type.
I’m so glad you liked it.
Method 5 is the best
Yup.
Do you have a way to autonumber in a table? I want to automatically add a unique Order ID every time a new order is entered in a table.
Hey Lisa,
How you are entering data in your table. I mean manually or by some kind of userform.
Manually.
Please Check This File.
I hope this will help
http://goo.gl/aBd985
Excellent, thank you! I find your blog very useful!
Hey Lisa,
Thanks for your words.
Hey Lisa,
Thanks for your words.