Format a numeric or date field to give additional context to an attribute so that it is more than just a number. Numeric and date field formatting are layer properties that can be set only within the current map.
To apply numeric or date formatting to a field in a layer or stand-alone table, follow these steps:
- Right-click a layer or table in the Contents pane.
- Choose Design from the context menu and click Fields.
The Fields view opens, displaying the layer's fields in a tabular arrangement.
- Click the cell in the Number Format column for the row of the field you want to format.
- In the highlighted cell, click the Options button to open the Number Format dialog box.
- Select a format category. Some considerations to keep in mind when you select a format category include the following:
- Numeric categories may include their own set of available formatting options.
- Date fields have one category containing multiple formats.
- Not all formats are supported when sharing.
- Click OK.
- Save the edits to the table to apply these changes.
Numeric formats
You can format a numeric value using one of 10 categories::
- None—No specific number format. When applied, this option will remove any formatting and revert the setting to the default determined by the file type.
- Numeric—General options for the display of numbers.
- Percentage—Display number as a percentage.
- Currency—Display number in the localized currency format.
- Rate—Display number as a specified rate.
- Fraction—Display a decimal number as a fraction.
- Scientific—Display number in scientific notation.
- Direction—Display a decimal number representing directions.
- Angle—Display numbers representing angles in either Decimal Degrees or Radians.
- Custom—Display number with a custom format string.
Each number format category has its own set of available formatting options. For example, with the Numeric category, you can specify the number of decimal places or significant digits to display, define the alignment of the cell, and turn on or off options for showing thousands separators, padding with zeros, and showing a plus sign for positive numbers.
Date and time formats
Date formats, unlike numeric formats, only have one category: Date. Within this category, you can choose from multiple supported date formats. The default is None, which includes the full date and time, except for midnight when only the date is shown. Optionally, you can choose System Default, the date displayed matches the default established by the operating system, or use Custom to generate your own format string.
Custom date and time formats
A custom format string consists of one or more date and time format specifiers. The following table summarizes the format specifiers that can be used to create a custom date and time format for interpreting data:
Date and Time Format Specifiers
Format specifier | Format type | Description |
---|---|---|
d | Day of Month | Day of month as digits with no leading zero for single-digit days. |
dd | Day of Month | Day of month as digits with leading zero for single-digit days. |
ddd | Day of Week | Day of week as a three-letter abbreviation. The function uses the abbreviations associated with the specified locale, for example, Mon in English (United States). Tip:Days of the week are not verified when interpreting a date value; therefore, it doesn't matter whether a day of the week appearing in your data correctly corresponds to the date represented in the data value. |
dddd | Day of Week | Day of week as its full name. The function uses the full day names associated with the specified locale, for example, Monday in English (United States). Tip:Days of the week are not verified when interpreting a date value; therefore, it doesn't matter whether a day of the week appearing in your data correctly corresponds to the date represented in the data value. |
M | Month | Month as digits with no leading zero for single-digit months. |
MM | Month | Month as digits with leading zero for single-digit months. |
MMM | Month | Month as a three-letter abbreviation. The function uses the month abbreviations associated with the specified locale, for example, Nov in English (United States). |
MMMM | Month | Month as its full name. The function uses the full month names associated with the specified locale, for example, November for English (United States), and noviembre for Spanish (Spain). |
y | Year | Year as last two digits but with no leading zero for years whose last two digits are less than 10. Tip:Years represented in this way can range from 1950 to 2049. A value of 49 or less is interpreted as occurring in the 21st century, for example, 7 is interpreted as 2007. A value of 50 or greater is interpreted as occurring in the 20th century, for example, 67 is interpreted as 1967. |
yy | Year | Year represented by the last two digits but with a leading zero for years whose last two digits are less than 10. Tip:Years represented in this way can range from 1950 to 2049. A value of 49 or less is interpreted as occurring in the 21st century. For example, 07 is interpreted as 2007. A value of 50 or greater is interpreted as occurring in the 20th century, for example, 67 is interpreted as 1967. |
yyy | Year | Year represented by three digits. Years represented in this way can range from 1 to 999. |
yyyy | Year | Year represented by four digits. |
gg | Era | Period/era string. The function uses the era values associated with the specified locale. |
h | Hour | Hour with no leading zero for single-digit hours; 12-hour clock. |
H | Hour | Hour with no leading zero for single-digit hours; 24-hour clock. |
hh | Hour | Hours with leading zero for single-digit hours; 12-hour clock. |
HH | Hour | Hours with leading zero for single-digit hours; 24-hour clock. |
m | Minute | Minutes with no leading zero for single-digit minutes. |
mm | Minute | Minutes with leading zero for single-digit minutes. |
s | Second | Seconds with no leading zero for single-digit seconds. |
ss | Second | Seconds with leading zero for single-digit seconds. |
s.s | Second | Seconds, including subseconds, with no leading zero for single-digit seconds. Although the format only shows one decimal place, any number of decimal places can be used. Caution:The precision of subsecond values is limited to what is supported for the time field data type. For example, if using a time field of field data type float or double, rounding errors should be expected. |
ss.s | Second | Seconds, including subseconds, with leading zero for single-digit seconds. Although the format only shows one decimal place, any number of decimal places can be used. Caution:The precision of subsecond values is limited to what is supported for the time field data type, for example, if using a time field of field data type float or double, rounding errors should be expected. |
t | Time Marker | One character time marker string, such as A or P. |
tt | Time Marker | Multicharacter time marker string, such as AM or PM. |
Separators
Separators are characters that separate information in text data values. Examples of commonly used separators are commas (,), colons (:), and spaces ( ), but there are no restrictions on the separators that can be used to create format strings. You can create format strings without any separators at all, especially when interpreting dates and times stored in numeric fields because numeric fields cannot store most of the commonly used separator characters.
In rare cases, data may contain separators that conflict with the formats in the table above. In these cases, single quotation marks must be used to isolate separators within your format string. In general, single quotation marks can be used to isolate any separators within a format string, but it is not recommended that you use them unless there is a potential conflict. The following examples show these concepts:
Example data value | Format | Date or time interpreted (displayed as MM/dd/yyyy or HH:mm:ss) |
---|---|---|
month12day30year2010 | 'month'MM'day'dd'year'yyyy | 12/30/2010 |
30/12/2010 | ddMMyyyy | 12/30/2010 |
Time:18hr6min3sec | 'Time:'h'hr'm'min's'sec' | 18:06:03 |
18:6:3 | HH:m:s | 18:06:03 |
Locales
Locales are important because they determine the valid data values for the long representations of some of the date formats in the table above. For example, the value November is only interpreted correctly for MMMM if the locale is an English-language locale. In some cases, if the format string doesn't use any long representations, the locale is irrelevant for interpreting the date, but the locale may affect the interpretation of AM and PM designators. If no AM or PM designators are specified, the default AM and PM designators for the locale are used.
Locales do not affect the formats used to create format strings. For example, the character M (or MM, MMM, MMMM) represents months regardless of the locale. The following examples illustrate how the locale is used to interpret dates:
Data value | Format string | Locale | Date interpreted (MM/dd/yyyy) |
---|---|---|---|
November 30, 2010 | MMMM dd, yyyy | English (United States) | 11/30/2010 |
Noviembre 30, 2010 | MMMM dd, yyyy | Spanish (Spain) | 11/30/2010 |
Mon, Feb 22, 2010 | ddd, MMM dd, yyyy | English (United States) | 2/22/2010 |
30/12/2010 | dd/M/yyyy | All locales | 12/30/2010 |