*This tutorial explains the basics of the Excel number format and provides the detailed guidance to create custom formatting. You will learn how to show the required number of decimal places, change alignment or font color, display a currency symbol, round numbers by thousands, show leading zeros, and much more. *

Microsoft Excel has a lot of built-in formats for number, currency, percentage, accounting, dates and times. But there are situations when you need something very specific. If none of the inbuilt Excel formats meets your needs, you can create your own number format.

Number formatting in Excel is a very powerful tool, and once you learn how to use it property, your options are almost unlimited. The aim of this tutorial is to explain the most essential aspects of Excel number format and set you on the right track to mastering custom number formatting.

## How to create a custom number format in Excel

To create a custom Excel format, open the workbook in which you want to apply and store your format, and follow these steps:

- Select a cell for which you want to create custom formatting, and press Ctrl+1 to open the
*Format Cells*dialog. - Under
*Category*, select**Custom**. - Type the format code in the
*Type*box. - Click OK to save the newly created format.

Done!

**Tip.**Instead of creating a custom number format from scratch, you choose a built-in Excel format close to your desired result, and customize it.

Wait, wait, but what do all those symbols in the *Type* box mean? And how do I put them in the right combination to display the numbers the way I want? Well, this is what the rest of this tutorial is all about :)

## Understanding Excel number format

To be able to create a custom format in Excel, it is important that you understand how Microsoft Excel sees the number format.

An Excel number format consists of 4 sections of code, separated by semicolons, in this order:

`POSITIVE; NEGATIVE; ZERO; TEXT`

Here's an example of a custom Excel format code:

- Format for positive numbers (display 2 decimal places and a thousands separator).
- Format for negative numbers (the same as for positive numbers, but enclosed in parenthesis).
- Format for zeros (display dashes instead of zeros).
- Format for text values (display text in magenta font color).

### Excel formatting rules

When creating a custom number format in Excel, please remember these rules:

- A custom Excel number format changes only the
**visual representation**, i.e. how a value is displayed in a cell. The underlying value stored in a cell is not changed. - When you are
**customizing**a built-in Excel format, a copy of that format is created. The original number format cannot be changed or deleted. - Excel custom number format does not have to include all four sections.
If a custom format contains just

**1 section**, that format will be applied to all number types - positive, negative and zeros.If a custom number format includes

**2 sections**, the first section is used for positive numbers and zeros, and the second section - for negative numbers.A custom format is applied to

**text values**only if it contains all four sections. - To apply the
**default**Excel number format for any of the middle sections, type**General**instead of the corresponding format code.For example, to display zeros as dashes and show all other values with the default formatting, use this format code:

`General; -General; "-"; General`

**Note.**The General format included in the 2^{nd}section of the format code does not display the minus sign, therefore we include it in the format code. - To
**hide**a certain value type(s), skip the corresponding code section, and only type the ending semicolon.For example, to hide zeros and negative values, use the following format code:

`General; ; ; General`

. As the result, zeros and negative value will appear only in the formula bar, but will not be visible in cells. - To
**delete**a custom number format, open the*Format Cells*dialog, select*Custom*in the*Category*list, find the format you want to delete in the*Type*list, and click the**Delete**button.

### Digit and text placeholders

For starters, let's learn 4 basic placeholders that you can use in your custom Excel format.

Code |
Description |
Example |

0 | Digit placeholder that displays insignificant zeros. | #.00 - always displays 2 decimal places.
If you type 5.5 in a cell, it will display as 5.50. |

# | Digit placeholder that represents optional digits and does not display extra zeros.
That is, if a number doesn't need a certain digit, it won't be displayed. |
#.## - displays up to 2 decimal places.
If you type 5.5 in a cell, it will display as 5.5. If you type 5.555, it will display as 5.56. |

? | Digit placeholder that leaves a space for insignificant zeros on either side of the decimal point but doesn't display them. It is often used to align numbers in a column by decimal point. | #.??? - displays a maximum of 3 decimal places and aligns numbers in a column by decimal point. |

@ | Text placeholder | 0.00; -0.00; 0; [Red]@ - applies the red font color for text values. |

The following screenshot demonstrates a few number formats in action:

As you may have noticed in the above screenshot, the digit placeholders behave in the following way:

- If a number entered in a cell has more digits
**to the right of the decimal point**than there are placeholders in the format, the number is "rounded" to as many decimal places as there are placeholders.For example, if you type 2.25 in a cell with

**#.#**format, the number will display as 2.3. - All digits
**to the left of the decimal point**are displayed regardless of the number of placeholders.For example, if you type 202.25 in a cell with

**#.#**format, the number will display as 202.3.

Below you will find a few more examples that will hopefully shed more light on number formatting in Excel.

Format | Description | Input values | Display as |

#.000 | Always display 3 decimal places. | 2 2.5 0.5556 |
2.000 2.500 .556 |

#.0# | Display a minimum of 1 and a maximum of 2 decimal places. | 2 2.205 0.555 |
2.0 2.21 .56 |

???.??? | Display up to 3 decimal places with aligned decimals. |
22.55 2.5 2222.5555 0.55 |
22.55 2.5 2222.556 .55 |

## Excel formatting tips and guidelines

Theoretically, there are an infinite number of Excel custom number formats that you can make using a predefined set of formatting codes listed in the table below. And the following tips explain the most common and useful implementations of these format codes.

Format Code | Description |

General | General number format |

# | Digit placeholder that represents optional digits and does not display extra zeros. |

0 | Digit placeholder that displays insignificant zeros. |

? | Digit placeholder that leaves a space for insignificant zeros but doesn't display them. |

@ | Text placeholder |

. (period) | Decimal point |

, (comma) | Thousands separator. A comma that follows a digit placeholder scales the number by a thousand. |

\ | Displays the character that follows it. |

" " | Display any text enclosed in double quotes. |

% | Multiplies the numbers entered in a cell by 100 and displays the percentage sign. |

/ | Represents decimal numbers as fractions. |

E | Scientific notation format |

_ (underscore) | Skips the width of the next character. It's commonly used in combination with parentheses to add left and right indents, _( and _) respectively. |

* (asterisk) | Repeats the character that follows it until the width of the cell is filled. It's often used in combination with the space character to change alignment. |

[] | Create conditional formats. |

### How to control the number of decimal places

The location of the **decimal point** in the number format code is represented by a **period** (.). The required number of **decimal places** is defined by **zeros** (0). For example:

`0`

or`#`

- display the nearest integer with no decimal places.`0.0`

or`#.0`

- display 1 decimal place.`0.00`

or`#.00`

- display 2 decimal places, etc.

The difference between 0 and # in the integer part of the format code is as follows. If the format code has only pound signs (#) to the left of the decimal point, numbers less than 1 begin with a decimal point. For example, if you type 0.25 in a cell with **#.00** format, the number will display as .25. If you use **0.00** format, the number will display as 0.25.

### How to show a thousands separator

To create an Excel custom number format with a thousands separator, include a **comma** (,) in the format code. For example:

`#,###`

- display a thousands separator and no decimal places.`#,##0.00`

- display a thousands separator and 2 decimal places.

### Round numbers by thousand, million, etc.

As demonstrated in the previous tip, Microsoft Excel separates thousands by commas if a comma is enclosed by any digit placeholders - pound sign (#), question mark (?) or zero (0). If no digit placeholder follows a comma, it scales the number by thousand, two consecutive commas scale the number by million, and so on.

For example, if a cell format is **#.00,** and you type 5000 in that cell, the number 5.00 is displayed. For more examples, please see the screenshot below:

### Text and spacing in custom Excel number format

To display both text and numbers in a cell, do the following:

- To add a
**single character**, precede that character with a backslash (\). - To add a
**text string**, enclose it in double quotation marks (" ").

For example, to indicate that numbers are rounded by thousands and millions, you can add *\K* and *\M* to the format codes, respectively:

- To display thousands:
`#.00,\K`

- To display millions:
`#.00,,\M`

**Tip.**To make the number format better readable, include a

**space**between a comma and backward slash.

The following screenshot shows the above formats and a couple more variations:

And here is another example that demonstrates how to display text and numbers within a single cell. Supposing, you want to add the word "*Increase*" for positive numbers, and "*Decrease*" for negative numbers. All you have to do is include the text enclosed in double quotes in the appropriate section of your format code:

`#.00" Increase"; -#.00" Decrease"; 0`

**Tip.**To include a

**space**between a number and text, type a space character after the opening or before the closing quote depending on whether the text precedes or follows the number, like in "

*Increase*".

In addition, the following characters can be included in Excel custom format codes without the use of backslash or quotation marks:

Symbol | Description |

+ and - | Plus and minus signs |

( ) | Left and right parenthesis |

: | Colon |

^ | Caret |

' | Apostrophe |

{ } | Curly brackets |

< > | Less-than and greater than signs |

= | Equal sign |

/ | Forward slash |

! | Exclamation point |

& | Ampersand |

~ | Tilde |

Space character |

A custom Excel number format can also accept other special symbols such as currency, copyright, trademark, etc. These characters can be entered by typing their four-digit ANSI codes while holding down the ALT key. Here are some of the most useful ones:

Symbol | Code | Description |

™ | Alt+0153 | Trademark |

© | Alt+0169 | Copyright symbol |

° | Alt+0176 | Degree symbol |

± | Alt+0177 | Plus-Minus sign |

µ | Alt+0181 | Micro sign |

For example, to display temperatures, you can use the format code **#"°F"** or **#"°C"** and the result will look similar to this:

You can also create a custom Excel format that combines some specific text and the text typed in a cell. To do this, enter the additional text enclosed in double quotes in the 4^{th} section of the format code before or after the text placeholder (@), or both.

For example, to proceed the text typed in the cell with some other text, say "*Shipped in*", use the following format code:

`General; General; General; "Shipped in "@`

### Including currency symbols in a custom number format

To create a custom number format with the dollar sign ($), simply type it in the format code where appropriate. For example, the format **$#.00** will display 5 as $5.00.

Other currency symbols are not available on most of standard keyboards. But you can enter the popular currencies in this way:

- Turn NUM LOCK on, and
- Use the numeric keypad to type the ANSI code for the currency symbol you want to display.

Symbol | Currency | Code |

€ | Euro | ALT+0128 |

£ | British Pound | ALT+0163 |

¥ | Japanese Yen | ALT+0165 |

¢ | Cent Sign | ALT+0162 |

The resulting number formats may look something similar to this:

If you want to create a custom Excel format with some other currency, follow these steps:

- Open the
*Format Cells*dialog, select**Currency**under*Category*, and choose the desired currency from the*Symbol*drop-down list, e.g. Russian Ruble:

- Switch to
**Custom**category, and modify the built-in Excel format the way you want. Or, copy the currency code from the*Type*field, and include it in your own number format:

### How to display leading zeros with Excel custom format

If you try entering numbers 005 or 00025 in a cell with the default *General* format, you would notice that Microsoft Excel removes leading zeros because the number 005 is same as 5. But sometimes, we do want 005, not 5!

The simplest solution is to apply the Text format to such cells. Alternatively, you can type an apostrophe (') in front of the numbers. Either way, Excel will understand that you want any cell value to be treated as a text string. As the result, when you type 005, all leading zeros will be preserved, and the number will show up as 005.

If you want all numbers in a column to contain a certain number of digits, with leading zeros if needed, then create a custom format that includes only zeros.

As you remember, in Excel number format, 0 is the placeholder that displays insignificant zeros. So, if you need numbers consisting of 6 digits, use the following format code: **000000**

And now, if you type 5 in a cell, it will appear as 000005; 50 will appear as 000050, and so on:

**Tip.**If you are entering phone numbers, zip codes, or social security numbers that contain leading zeros, the easiest way is to apply one of the predefined Special formats. Or, you can create the desired custom number format. For example, to properly display international seven-digit postal codes, use this format:

**0000000**. For credit card numbers with leading zeros, apply this format:

**000-00-0000**.

### Percentages in Excel custom number format

To display a number as a percentage of 100, include the **percent sign** (%) in your number format.

For example, to display percentages as integers, use this format: **#%**. As the result, the number 0.25 entered in a cell will appear as 25%.

To display percentages with 2 decimal places, use this format: **#.00%**

To display percentages with 2 decimal places and a thousands separator, use this one: **#,##.00%**

### Fractions in Excel number format

Fractions are special in terms that the same number can be displayed in a variety of ways. For example, 1.25 can be shown as 1 ¼ or 5/5. Exactly which way Excel displays the fraction is determined by the format codes that you use.

For decimal numbers to appear as fractions, include **forward slash** (/) in your format code, and separate an integer part with a space. For example:

`# #/#`

- displays a fraction remainder with up to 1 digit.`# ##/##`

- displays a fraction remainder with up to 2 digits.`# ###/###`

- displays a fraction remainder with up to 3 digits.`###/###`

- displays an improper fraction (a fraction whose numerator is larger than or equal to the denominator) with up to 3 digits.

To round fractions to a specific denominator, supply it in your number format code after the slash. For example, to display decimal numbers as eighths, use the following **fixed base** fraction format: **# #/8**

The following screenshot demonstrated the above format codes in action:

As you probably know, the predefined Excel Fraction formats align numbers by the fraction bar (/) and display the whole number at some distance from the remainder. To implement this alignment in your custom format, use the question mark placeholders (?) instead of the pound signs (#) like shown in the following screenshot:

**Tip.**To enter a fraction in a cell formatted as

*General*, preface the fraction with a zero and a space. For instance, to enter 4/8 in a cell, you type 0 4/8. If you type 4/8, Excel will assume you are entering a date, and change the cell format accordingly.

### Create a custom Scientific Notation format

To display numbers in Scientific Notation format (Exponential format), include the capital letter **E** in your number format code. For example:

`00E+00`

- displays 1,500,500 as 1.50E+06.`#0.0E+0`

- displays 1,500,500 as 1.5E+6`#E+#`

- displays 1,500,500 as 2E+6

### Show negative numbers in parenthesis

At the beginning of this tutorial, we discussed the 4 code sections that make up an Excel number format: `Positive; Negative; Zero; Text`

Most of the format codes we've discussed so far contained just 1 section, meaning that the custom format is applied to all number types - positive, negative and zeros.

To make a custom format for negative numbers, you'd need to include at least 2 code sections: the first will be used for positive numbers and zeros, and the second - for negative numbers.

To show negative values in parenthesis, simply include them in the second section of your format code, for example: `#.00; (#.00)`

**Tip.**To line up positive and negative numbers at the decimal point, add an indent to the positive values section, e.g.

`0.00_); (0.00)`

### Display zeroes as dashes or blanks

The built-in Excel Accounting format shows zeros as dashes. This can also be done in your custom Excel number format.

As you remember, the zero layout is determined by the 3^{rd} section of the format code. So, to force zeros to appear as **dashes**, type **"-"** in that section. For example: `0.00;(0.00);"-"`

The above format code instructs Excel to display 2 decimal places for positive and negative numbers, enclose negative numbers in parenthesis, and turn zeros into dashes.

If you don't want any special formatting for positive and negative numbers, type *General* in the 1^{st} and 2^{nd} sections: `General; -General; "-"`

To turn zeroes into **blanks**, skip the third section in the format code, and only type the ending semicolon: `General; -General; ; General`

### Add indents with custom Excel format

If you don't want the cell contents to ride up right against the cell border, you can indent information within a cell. To add an indent, use the **underscore** (_) to create a space equal to the width of the character that follows it.

The commonly used indent codes are as follows:

- To indent from the left border:
**_(** - To indent from the right border:
**_)**

Most often, the right indent is included in a positive number format, so that Excel leaves space for the parenthesis enclosing negative numbers.

For example, to indent positive numbers and zeros from the right and text from the left, you can use the following format code:

`0.00_);(0.00); 0_);_(@`

Or, you can add indents on both sides of the cell:

`_(0.00_);_((0.00);_(0_);_(@_)`

The indent codes move the cell data by one character width. To move values from the cell edges by more than one character width, include 2 or more consecutive indent codes in your number format. The following screenshot demonstrates indenting cell contents by 1 and 2 characters:

### Change font color with custom number format

Changing the font color for a certain value type is one of the simplest things you can do with a custom number format in Excel, which supports 8 main colors. To specify the color, just type one of the following color names in an appropriate section of your number format code.

[Black] [Green] [White] [Blue] |
[Magenta] [Yellow] [Cyan] [Red] |

**Note.**The color code must be the

**first item**in the section.

For example, to leave the default General format for all value types, and change only the font color, use the format code similar to this:

`[Green]General;[Red]General;[Black]General;[Blue]General`

Or, combine color codes with the desired number formatting, e.g. display the currency symbol, 2 decimal places, a thousands separator, and show zeros as dashes:

`[Blue]$#,##0.00; [Red]-$#,##0.00; [Black]"-"; [Magenta]@`

### Repeat characters with custom format codes

To repeat a specific character in your custom Excel format so that it fills the column width, type an **asterisk** (*) before the character.

For example, to include enough equality signs after a number to fill the cell, use this number format: **#*=**

Or, you can include leading zeros by adding *0 before any number format, e.g. ***0#**

This formatting technique is commonly used to change cell alignment as demonstrated in the next formatting tip.

### How to change alignment in Excel with custom number format

A usual way to change alignment in Excel is using the *Alignment* tab on the ribbon. However, you can "hardcode" cell alignment in a custom number format if needed.

For example, to align numbers left in a cell, type an **asterisk** and a **space** after the number code, for example: "**#,###* **" (double quotes are used only to show that an asterisk is followed by a space, you don't need them in a real format code).

Making a step further, you could have numbers aligned left and text entries aligned right using this custom format:

`#,###* ; -#,###* ; 0* ;* @`

This method is used in the built-in Excel Accounting format . If you apply the Accounting format to some cell, then open the *Format Cells* dialog, switch to the *Custom* category and look at the *Type* box, you will see this format code:

`_($* #,##0.00_);_($* (#,##0.00);_($* "-"??_);_(@_)`

The asterisk that follows the currency sign tells Excel to repeat the subsequent space character until the width of a cell is filled. This is why the Accounting number format aligns the currency symbol to the left, number to the right, and adds as many spaces as necessary in between.

### Apply custom number formats based on conditions

To have your custom Excel format applied only if a number meets a certain condition, type the condition consisting of a comparison operator and a value, and enclose it in **square brackets** [].

For example, to displays numbers that are less than 10 in a red font color, and numbers that are greater than or equal to 10 in a green color, use this format code:

`[Red][<10];[Green][>=10]`

Additionally, you can specify the desired number format, e.g. show 2 decimal places:

`[Red][<10]0.00;[Green][>=10]0.00`

And here is another extremely useful, though rarely used formatting tip. If a cell displays both numbers and text, you can make a conditional format to show a noun in a singular or plural form depending on the number. For example:

`[=1]0" mile";0.##" miles"`

The above format code works as follows:

- If a cell value is equal to 1, it will display as "
*1 mile*". - If a cell value is greater than 1, the plural form "
*miles*" will show up. Say, the number 3.5 will display as "*3.5 miles*".

Taking the example further, you can display fractions instead of decimals:

`[=1]?" mile";# ?/?" miles"`

In this case, the value 3.5 will appear as "*3 1/2 miles*".

**Tip.**To apply more sophisticated conditions, use Excel's Conditional Formatting feature, which is specially designed to handle the task.

### Dates and times formats in Excel

Excel date and times formats are a very specific case, and they have their own format codes. For the detailed information and examples, please check out the following tutorials:

Well, this is how you can change number format in Excel and create your own formatting. Finally, here's a couple of tips to quickly apply your custom formats to other cells and workbooks:

- A custom Excel format is
**stored in the workbook**in which it is created and is not available in any other workbook. To use a custom format in a new workbook, you can save the current file as a template, and then use it as the basis for a new workbook. - To apply a custom format to other cells in a click, save it as an
**Excel style**- just select any cell with the required format, go to the*Home*tab >*Styles*group, and click*New Cell Style…*.

To explore the formatting tips further, you can download a copy of the Excel Custom Number Format workbook we used in this tutorial. I thank you for reading and hope to see you again next week!

I'm trying to convert a number, say 123.50 to 000012350 (always 10 characters, need pennies but no decimal point.

Thanks

Hi Kevin,

Assuming the original number is in A1, the conversion can be performed with this formula:

=TEXT(A1*100, "0000000000")

However, the result of the formula will be a numeric string, not a number.

If the result should be number, you can multiply the original numbers by 100 to get rid of the decimal point (=A1*100), replace formulas with values if needed (an intermediate result will be 12350), and then apply this custom format: 0000000000 to always display 10 characters with the required number of leading zeros.

I NEED 4556 A,4557 B,4558 C,4559 D ,,,,,,,,,, serial numbers with 6 rows and 6 columns formula send me plz

Hi Svetlana,

I'm having trouble formatting text and would like to omit the first two letters. I'm aware that I could use RIGHT(CELL,LEN(CELL)-2) but I don't want to change the actual text, just to display it in a different way, with the underlying 'value' of the cell staying the same.

For example, I can type in the custom formatting bar "Rob" to display only "Rob" no matter what I actually type into the cell.

I would like to format cells so that the first two letters aren't displayed, for example, entering "Steve" would show "eve" in the cell, or "Howard" showing "ward". (Sounds weird but I do genuinely need this.)

Is this possible?

Thank you for the fantastic article, it was very helpful and well written.

Rob

I'm trying to round the number 1,230 to 1,200; or 43,540 to 43,500. Thanks.

Hello, Jamael,

It looks like you can solve your task using the FLOOR function. If your value is in A1, please try to apply the following formula:

=FLOOR(A1,100)

You can learn more about rounding in Excel in the following article on our blog:

How to round numbers in Excel - ROUND, ROUNDUP, ROUNDDOWN and other functions

Hope you’ll find this information helpful.

I need to convert a 00000 type formatted cell content (shows as 00123) to text with same number of leading zeros. Since Excel understands the value only as 123 converting the cell format to text removes the zeros. Thanks in advance.

Super useful. thanks

I am trying to format my phone numbers to look like this: 303.555.9876, but instead they look like this:3035559876..

I will like to know how to fix this problem.

I NEED TO CONVERT ALL THE NUMBERS THAT I ENTER SHOULD BE IN LAKHS.

hello

how to format a cell like: AAAA12345-6?

Hi Svetlana,

Trying to use Custom Format to color numbers in a cell based on the these conditions: green for 45 but =60.

Any suggestions?

Hi Svetlana,

Trying to use Custom Format to color numbers in a cell based on the following conditions: green for numbers less than or equal to 45, amber for numbers greater than 45 but less than 60, and red for numbers 60 and greater.

Any suggestions?

Hi Dana,

This can be done with Excel conditional formatting. You can find the detailed steps and examples of conditional formatting rules in this tutorial:

Excel conditional formatting based on formulas

If I am trying to format a phone number to read (so zeros need to be visible):

(XXX) XXX XXXX

and

1 (XXX) XXX XXXX

I cannot find the code to use a comma...

I want convert this text 20122018(ddmmyyyy) to this date dd-mm-yyyy format please how we will convert using text formula

Hi,

could you please help me with the date format, I want space between days and months numbers like dd/mm/yyyy to d d/m m/yyyy.(2 2/1 1/2018)

Thanks

i like it

We get a list of numbers in that actually start with a letter (Example L18-021547) and I would like to figure out how to apply a format to those numbers that adds an asterisk (*) to the beginning and the end of that without having to add them to every single field manually (*L18-021547*). We get a bundle of 100+ of these numbers for each report and I am just trying to come up with a way for it to see the field as a number, which it is not doing at the moment because it starts with "L". Any suggests?

try using this formating in cell format

"*L"00-000000"*"

each time you just need to type out the number and it will add the * and also the L for you.

Shaina:

Your request is somewhat confusing because Excel is not going to see "L18-021547" as a number. Then you say you're trying to come up with a way to see the field as a number with an asterisk at the beginning and end of the text.

=CONCATENATE("*",A2,"*") will add an asterisk to the front-end and back-end but it will still be text. Excel is not able to convert the letter "L" and the "-" into a number.

Why do you need the data as a number?

#.##% = 1.%

genaral% = 100%

can i know how to remove the decimal point? or did i use the wrong code for it?

i want it to have the expending function like how the general give where if you don't have decimal it don't show but if you have then only it shows.