---
title: "Format Date Columns"
canonical: "https://support.appfire.com/space/TBL/74815249/Format%20Date%20Columns"
format: markdown
---
> Macro (div)
> 
> ### On this page
> 
> > Macro (toc)

# Overview

Starting with [Version 6.4](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74814232) of the [Advanced Tables for Confluence](https://appfire.atlassian.net/wiki/spaces/TBL/overview) add-on, it is possible to specify the format that is used to **view** date columns. The actual data is not changed, just how it is displayed. This helps to keep the data looking consistent even if the provided data is not. This can be enabled by using the **M** column type for the [Column Types](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74814401) parameter corresponding to the column. [Advanced Date Sorting](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74814686) specifies how to use the **M** column type to customize how the column data is interpreted as a data. With an additional specification, the format of how the date should appear when viewed.

Two date formats are needed to support both interpreting the data and formatting the output. 

1. Input format - this is first format specified on the **M **column type, although it is usually defaulted when nothing is specified. See [Advanced Date Sorting](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74814686) for more details.
2. Display format - this is how you want the date to be displayed and sorted. If not specified, the column displays as is. The display format is similar but, necessarily, more complex than the input format. It is summarized below. The **~** character is used to separated the input and display formats to avoid most conflicts with characters used in formats.

### Examples

| Column type | Input format | Display format |
| --- | --- | --- |
| M~YYYY.MM.DD | <default> | YYYY.MM.DD |
| MDDMMMYYYY~YYYY.MM.DD | DDMMMYYYY | YYYY.MM.DD |
| M(de)DDMMMYYYY~YYYY.MM.DD | (de)DDMMMYYYY | YYYY.MM.DD |
| MX~DD.MM.YY | Unix timestamp | DD.MM.YY |
| MDD MMM YYYY~YYYY.MM.DD | DD MMM YYYY<br>Default Confluence Date Picker (US) | YYYY.MM.DD |

# Usage

The Formatting Options listed on this page can be defined through the ***[Column Types](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74814401)***** **parameter within the following Macros:

- [CSV macro](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74815945)
- [Table Plus macro](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74815966)
- [Attachment Table macro](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74814506)
- [JSON Table Macro](https://appfire.atlassian.net/wiki/spaces/TBL/pages/74815257)
- [SQL Macro](https://appfire.atlassian.net/wiki/spaces/SQL/pages/74320195)
- [SQL-query Macro](https://appfire.atlassian.net/wiki/spaces/SQL/pages/74320330)
- [SQL-file Macro](https://appfire.atlassian.net/wiki/spaces/SQL/pages/74318828)
- [Excel macro - 6.x](https://appfire.atlassian.net/wiki/spaces/XL/pages/76614039)

### Screenshot

![image](media://386385f7-71ef-4444-a62b-6f1c1464e43b)

# Formatting Options

> ℹ️ ### Acknowledgement
> ℹ️ 
> ℹ️ Advanced date sorting support with the **M** column type is provided using javascript implemented by the [Table Library for Bob Swift Add-ons](https://appfire.atlassian.net/wiki/spaces/TBLSORT) with the help of the [Moment.js](http://momentjs.com/) library (open source, MIT license). A summary of the relevant parts of the [moment.js documentation](http://momentjs.com/docs/#/displaying/format/) is repeated here.

  


> Macro (table-plus)
> 
> |  | Token | Output |
> | --- | --- | --- |
> | **Month** | M | 1 2 ... 11 12 |
> |  | Mo | 1st 2nd ... 11th 12th |
> |  | MM | 01 02 ... 11 12 |
> |  | MMM | Jan Feb ... Nov Dec |
> |  | MMMM | January February ... November December |
> | Quarter | Q | 1 2 3 4 |
> | **Day of Month** | D | 1 2 ... 30 31 |
> |  | Do | 1st 2nd ... 30th 31st |
> |  | DD | 01 02 ... 30 31 |
> | **Day of Year** | DDD | 1 2 ... 364 365 |
> |  | DDDo | 1st 2nd ... 364th 365th |
> |  | DDDD | 001 002 ... 364 365 |
> | **Day of Week** | d | 0 1 ... 5 6 |
> |  | do | 0th 1st ... 5th 6th |
> |  | dd | Su Mo ... Fr Sa |
> |  | ddd | Sun Mon ... Fri Sat |
> |  | dddd | Sunday Monday ... Friday Saturday |
> | **Day of Week (Locale)** | e | 0 1 ... 5 6 |
> | **Day of Week (ISO)** | E | 1 2 ... 6 7 |
> | **Week of Year** | w | 1 2 ... 52 53 |
> |  | wo | 1st 2nd ... 52nd 53rd |
> |  | ww | 01 02 ... 52 53 |
> | **Week of Year (ISO)** | W | 1 2 ... 52 53 |
> |  | Wo | 1st 2nd ... 52nd 53rd |
> |  | WW | 01 02 ... 52 53 |
> | **Year** | YY | 70 71 ... 29 30 |
> |  | YYYY | 1970 1971 ... 2029 2030 |
> | **Week Year** | gg | 70 71 ... 29 30 |
> |  | gggg | 1970 1971 ... 2029 2030 |
> | **Week Year (ISO)** | GG | 70 71 ... 29 30 |
> |  | GGGG | 1970 1971 ... 2029 2030 |
> | **AM/PM** | A | AM PM |
> |  | a | am pm |
> | **Hour** | H | 0 1 ... 22 23 |
> |  | HH | 00 01 ... 22 23 |
> |  | h | 1 2 ... 11 12 |
> |  | hh | 01 02 ... 11 12 |
> | **Minute** | m | 0 1 ... 58 59 |
> |  | mm | 00 01 ... 58 59 |
> | **Second** | s | 0 1 ... 58 59 |
> |  | ss | 00 01 ... 58 59 |
> | **Fractional Second** | S | 0 1 ... 8 9 |
> |  | SS | 0 1 ... 98 99 |
> |  | SSS | 0 1 ... 998 999 |
> | **Timezone** | z or zz | EST CST ... MST PST   
> **Note:** as of **1.6.0**, the z/zz format tokens have been deprecated. [Read more about it here.](https://github.com/moment/moment/issues/162) |
> |  | Z | -07:00 -06:00 ... +06:00 +07:00 |
> |  | ZZ | -0700 -0600 ... +0600 +0700 |
> | **Unix Timestamp** | X | 1360013296 |

# Internationalization

See [language support (i18n)](https://appfire.atlassian.net/wiki/display/TBL/Advanced+Date+Sorting#AdvancedDateSorting-Languagesupport(i18n)).