ThisCalculator

Everyday

Excel ComboBox Date Format: Display Dates Correctly

Updated · Standard formula, shown below

Excel ComboBox Date Format: Display Dates Correctly

An Excel ComboBox does not have one universal date-format setting: its display depends on how dates enter the control and whether it is a worksheet ComboBox or a VBA UserForm ComboBox. To show dates consistently, format the source cells or convert the values to text in the control’s list, then check how the selected value is written back to the worksheet.

Which Excel ComboBox Are You Using?

Excel has two commonly used ComboBox types, and their date behavior differs. A worksheet ComboBox is inserted from the Developer tab as a Form Control or ActiveX Control. A UserForm ComboBox is created in the Visual Basic for Applications (VBA) editor and populated through code.

  • Form Control: Its input range is a worksheet range. The list generally displays the cell contents as they are presented in the sheet, but the linked cell receives an index number for the chosen item, not the date itself.
  • ActiveX worksheet control: Its ListFillRange can point to worksheet cells, and its LinkedCell can receive the selected value. Date display may depend on the source values and formatting, so check both the list and linked cell.
  • UserForm ComboBox: VBA code normally supplies the list. If the code adds actual Excel date values, their displayed representation can vary; supplying formatted text makes the intended display explicit.

Before changing anything, identify the control. Right-click a worksheet control: Form Control and ActiveX Control options differ. A UserForm ComboBox is edited in the VBA editor, not through the worksheet’s control-format dialog.

How Excel Stores and Displays Dates

In ordinary Excel worksheets, a date is typically stored as a serial number: the whole-number portion represents a day, and a decimal portion can represent time. A cell’s number format tells Excel how to display that value. For example, the same underlying date can appear as 3/7/2026, 7-Mar-2026, or March 7, 2026, depending on the format and regional settings.

A ComboBox is not itself a worksheet cell, so applying a date number format to a cell does not necessarily set the format of every item in every type of ComboBox. The control may display source-cell values, receive values through VBA, or show an index. The key distinction is between a true date value and text that merely looks like a date.

If you need the chosen item to remain usable for date calculations, preserve a real date value and apply a suitable number format to the destination cell. If you need a consistent label inside the list, use formatted text for the displayed item and keep a corresponding real date elsewhere when necessary.

Format Dates in a Worksheet ComboBox

For a worksheet control populated from cells, start by formatting the source range:

  1. Enter valid dates in a worksheet column, one date per cell.
  2. Select the source cells, open Format Cells, and choose a date format. You can also use a custom format such as dd-mmm-yyyy for a display like 07-Mar-2026.
  3. Set the ComboBox’s input range or ListFillRange to those cells, according to the control type.
  4. Test the displayed list and the linked cell separately. Select an item, then inspect the destination cell’s value and number format.

With a Form Control, the linked cell normally reports the selected item’s position in the list—for example, 2 for the second item. To return the date, use that position to retrieve the matching source value. For a source range in A2:A10 and an index in B1, a worksheet formula such as =INDEX(A2:A10,B1) returns the corresponding date. Format the formula cell as a date; the formula result may otherwise appear as a serial number.

ActiveX controls can use a linked cell to hold a selected value, but the result and display still merit a direct test. Do not assume that a source-cell format automatically formats the linked cell.

Format Dates in a VBA UserForm ComboBox

When VBA builds a UserForm list, use Format to create a predictable date label. For example:

For Each c In Worksheets("Sheet1").Range("A2:A10")
    If IsDate(c.Value) Then
        UserForm1.ComboBox1.AddItem Format(c.Value, "dd-mmm-yyyy")
    End If
Next c

This places text such as 07-Mar-2026 in the ComboBox. The format string uses VBA’s date-format conventions; common choices include m/d/yyyy, dd-mmm-yyyy, and mmmm d, yyyy. The displayed string is text, so it is useful as a label but is not automatically a date serial suitable for date arithmetic.

If the selected date must remain a true date, store the underlying value separately or convert the selected text back carefully. For example, DateValue(ComboBox1.Value) can interpret recognizable date text, but its interpretation can depend on regional settings. A robust design keeps the original date value alongside the display text rather than relying on ambiguous text such as 03/04/2026.

Choose a Format That Avoids Ambiguity

Choose a date format based on who will read the list and whether dates need to be sorted or calculated:

  • dd-mmm-yyyy is compact and makes the month clear: 04-Mar-2026.
  • yyyy-mm-dd puts the year first and avoids confusion between day-first and month-first numeric dates.
  • mmmm d, yyyy is more readable in a wide list, such as March 4, 2026.

Numeric formats such as m/d/yyyy can be interpreted differently across regional settings. A format changes presentation, not the underlying date. Also decide whether the time matters: a cell formatted only as a date can contain a time portion that is hidden from view.

Common Problems and Fixes

  • The list shows numbers: The source values may be displayed as serial numbers, or the control may be showing an index. Format the source or destination appropriately and confirm which control type you have.
  • The linked cell shows 1, 2, or 3: This is expected for a Form Control linked cell; it identifies the selected list position. Retrieve the matching date with a lookup or index formula.
  • Dates appear in the wrong order: Text dates may sort alphabetically rather than chronologically. Sort real date values before converting them to display text.
  • A date changes meaning on another computer: Ambiguous text can be parsed under different regional conventions. Prefer real date values or a clear year-first display, and avoid interpreting an ambiguous string without controlling its locale.
  • Formatting the cell has no effect: The ComboBox may be populated by VBA or may not display the cell value in the way expected. Inspect the code that fills the list, or explicitly add formatted text.

Frequently Asked Questions

Can I set a date format directly on an Excel ComboBox?
There is no single date-format property that works identically across worksheet and UserForm ComboBoxes. Format source cells for range-based lists, or use VBA’s Format function when adding items to a UserForm ComboBox.

Why does my ComboBox show a number instead of a date?
Excel may be showing a date serial, or a Form Control’s linked cell may be showing the selected item’s index. Format the appropriate cell, and use the index to retrieve the matching date when needed.

How do I show dates as dd-mmm-yyyy?
Format worksheet source cells with that custom number format. For a UserForm list, add the item using VBA such as Format(dateValue, "dd-mmm-yyyy").

Will a formatted ComboBox date still work in formulas?
If the list or destination contains a real date value, it can be used in date calculations, even when displayed in a different format. If you added formatted text, it is text and may need conversion before calculations.

Can a Form Control ComboBox return the selected date?
Its linked cell returns the position of the selected entry. Use that position with the source range—for example, with INDEX—to return the corresponding date value.

Related

Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.