Date and number formats
Different formats for different numeric values
A format expression for numbers can have from one to four sections separated by semicolons. If the format argument contains one of the named numeric formats, only one section is allowed.
If you use | The result is |
---|---|
One section only | The format expression applies to all values. |
Two sections | The first section applies to positive values and zeros, the second to negative values. |
Three sections | The first section applies to positive values, the second to negative values, and the third to zeros. |
Four sections | The first section applies to positive values, the second to negative values, the third to zeros, and the fourth to Null values. |
$#,##0;($#,##0)
If you include semicolons with nothing between them, the missing section is printed using the format of the positive value. For example, the following format displays positive and negative values using the format in the first section and displays "Zero" if the value is zero
$#,##0;;\Z\e\r\o
Named numeric formats
The following table identifies the predefined numeric format names.
Format name | Description |
---|---|
General Number | Display number with no thousand separator. |
Currency | Display number with thousand separator, if appropriate; display two digits to the right of the decimal separator. Output is based on system locale settings. |
Fixed | Display at least one digit to the left and two digits to the right of the decimal separator. |
Standard | Display number with thousand separator, at least one digit to the left and two digits to the right of the decimal separator. |
Percent | Display number multiplied by 100 with a percent sign (%) appended to the right; always display two digits to the right of the decimal separator. |
Scientific | Use standard scientific notation. |
Yes/No | Display No if number is 0; otherwise, display Yes. |
True/False | Display False if number is 0; otherwise, display True. |
On/Off | Display Off if number is 0; otherwise, display On. |
Named date/time formats
The following table identifies the predefined date and time format names.
Format name | Description |
---|---|
General Date | Display a date and/or time, for example, 4/3/21 05:34 PM. If there is no fractional part, display only a date, for example, 4/3/93. If there is no integer part, display time only, for example, 05:34 PM. Date display is determined by your system settings. |
Long Date | Display a date according to your system's long date format. |
Medium Date | Display a date using the medium date format based on your system's international settings. |
Short Date | Display a date using your system's short date format. |
Long Time | Display a time using your system's long time format; includes hours, minutes, seconds. |
Medium Time | Display time in 12-hour format using hours and minutes and the AM/PM designator. |
Short Time | Display a time using the 24-hour format, for example, 17:45. |
User-defined date/time formats
The following table identifies characters you can use to create user-defined date/time formats.
Character | Description |
---|---|
(:) | Time separator. In some locales, other characters may be used to represent the time separator. The time separator separates hours, minutes, and seconds when time values are formatted. The actual character used as the time separator in formatted output is determined by your system settings. |
(/) | Date separator. In some locales, other characters may be used to represent the date separator. The date separator separates the day, month, and year when date values are formatted. The actual character used as the date separator in formatted output is determined by your system settings. |
c | Display the date as ddddd and display the time as ttttt , in that order. Display only date information if there is no fractional part to the date serial number; display only time information if there is no integer portion. |
d | Display the day as a number without a leading zero (1–31). |
dd | Display the day as a number with a leading zero (01–31). |
ddd | Display the day as an abbreviation (Sun–Sat). Localized. |
dddd | Display the day as a full name (Sunday–Saturday). Localized. |
ddddd | Display the date as a complete date (including day, month, and year), formatted according to your system's short date format setting. |
dddddd | Display a date serial number as a complete date (including day, month, and year) formatted according to the long date setting recognized by your system. |
w | Display the day of the week as a number (1 for Sunday through 7 for Saturday). |
ww | Display the week of the year as a number (1–54). |
m | Display the month as a number without a leading zero (1–12). If m immediately follows h or hh , the minute rather than the month is displayed. |
mm | Display the month as a number with a leading zero (01–12). If m immediately follows h or hh , the minute rather than the month is displayed. |
mmm | Display the month as an abbreviation (Jan–Dec). Localized. |
mmmm | Display the month as a full month name (January–December). Localized. |
q | Display the quarter of the year as a number (1–4). |
y | Display the day of the year as a number (1–366). |
yy | Display the year as a 2-digit number (00–99). |
yyyy | Display the year as a 4-digit number (100–9999). |
h | Display the hour as a number without a leading zero (0–23). |
hh | Display the hour as a number with a leading zero (00–23). |
n | Display the minute as a number without a leading zero (0–59). |
nn | Display the minute as a number with a leading zero (00–59). |
s | Display the second as a number without a leading zero (0–59). |
ss | Display the second as a number with a leading zero (00–59). |
ttttt | Display a time as a complete time (including hour, minute, and second), formatted using the time separator defined by the time format recognized by your system. A leading zero is displayed if the leading zero option is selected and the time is before 10:00 A.M. or P.M. |
AM/PM | Use the 12-hour clock and display an uppercase AM with any hour before noon; display an uppercase PM with any hour between noon and 11:59 P.M. |
am/pm | Use the 12-hour clock and display a lowercase AM with any hour before noon; display a lowercase PM with any hour between noon and 11:59 P.M. |
A/P | Use the 12-hour clock and display an uppercase A with any hour before noon; display an uppercase P with any hour between noon and 11:59 P.M. |
a/p | Use the 12-hour clock and display a lowercase A with any hour before noon; display a lowercase P with any hour between noon and 11:59 P.M. |
AMPM | Use the 12-hour clock and display the AM string literal as defined by your system with any hour before noon; display the PM string literal as defined by your system with any hour between noon and 11:59 P.M. AMPM can be either uppercase or lowercase, but the case of the string displayed matches the string as defined by your system settings. The default format is AM/PM. If your system is set to 24-hour clock, the string is typical set to a zero-length string. |
Different formats for different string values
A format expression for strings can have one section or two sections separated by a semicolon (;).
If you use | The result is |
---|---|
One section only | The format applies to all string data. |
Two sections | The first section applies to string data, the second to Null values and zero-length strings (""). |
User-defined string formats
You can use any of the following characters to create a format expression for strings.
Character | Description |
---|---|
@ | Character placeholder. Display a character or a space. If the string has a character in the position where the at symbol (@) appears in the format string, display it; otherwise, display a space in that position. Placeholders are filled from right to left unless there is an exclamation point character (!) in the format string. |
& | Character placeholder. Display a character or nothing. If the string has a character in the position where the ampersand (&) appears, display it; otherwise, display nothing. Placeholders are filled from right to left unless there is an exclamation point character (!) in the format string. |
< | Force lowercase. Display all characters in lowercase format. |
> | Force uppercase. Display all characters in uppercase format. |
! | Force left to right fill of placeholders. The default is to fill placeholders from right to left. |