How to create calendar in Excel (drop-down and printable)

The tutorial shows how to insert a drop-down calendar in Excel (date picker) and link it to a specific cell. You will also learn a quick way to create a printable calendar based on an Excel calendar template.

When working with large or shared worksheets, maintaining data integrity is the biggest problem, especially when it comes to entering dates. Should they be entered as mm/dd/yy or dd/mm/yy or mm-dd-yyyy? And can I simply type a date like "05 Sep 2016"? Oh, and what was the date of the first Monday in September this year?

All of the above problems can easily be solved by inserting a drop down calendar that will let your users fill in dates in a mouse click! This tutorial will teach you an easy way to make such a calendar in Excel, and show how to quickly create a calendar based on a template.

How to insert a calendar in Excel (Date Picker control)

Inserting a dropdown calendar in Excel is easy, but because the Date and Time Picker Control is so well hidden many users don't even know that it exists. The following guidelines will walk you through the process step-by-step, but first be sure to read the following important note.

Note. Microsoft's Date Picker control works with 32-bit versions, but it will not work on Excel 64-bit.

To insert a calendar in Excel, perform the following steps.

1. Show the Developer tab on the ribbon

The datepicker control belongs to a family of ActiveX controls, which reside on the Developer tab. By default, the Developer tab is hidden in Excel, but you can force it to appear in no time.

  • Right-click anywhere on the ribbon, and then click Customize the Ribbon
  • In the right-hand part of the window, select Main Tabs (usually it is selected by default), check the Developer box, and click OK.
Add the Developer tab to the Excel ribbon.

2. Insert a calendar control

A drop-down calendar in Excel is technically called Microsoft Date and Time Picker Control. To insert it in your sheet, just do the following:

  • Go to the Developer tab > Controls group, click Insert, and then click the More Controls button under ActiveX Controls. To insert a calendar, click the More Controls button under ActiveX Controls.
  • In the More Controls dialog window, find the Microsoft Date and Time Picker Control 6.0 (SP6), select it, and click OK. Select Microsoft Date and Time Picker Control

    If you cannot find the Date and Time Picker Control in the list, please follow these instructions to register it.

  • Finally, click on a cell where you want to insert the calendar control.

That's it! A drop down calendar control is inserted in your Excel sheet: The datepicker control is inserted in Excel.

As soon as the datepicker control is inserted, the EMBED formula appears in the formula bar. It informs Excel what type of control is embedded in the sheet, and in no case you should change or delete it, because this would result in the "Reference is not valid" error.

Inserting any ActiveX control (including DTPiker) automatically turns the Design Mode on allowing you to modify the appearance and properties of the newly added control. The most obvious changes that you will want to make most of the time is to resize your calendar control and link it to a specific cell.

To activate your Excel drop down calendar, go to the Design tab > Controls group, and turn off the Design Mode: To activate a drop down calendar, turn off the Design Mode.

And now, you can click on the dropdown arrow to display the calendar and select the desired date: Click on the dropdown arrow and select the desired date.

Note. If the Microsoft Date Piker control is not available in the More Controls list, it's most likely because of the following reasons:

  • You are using the 64 bit version of Office. Regrettably, there is no official date picker control for Office 64-bit. The only solution is using a third-party calendar for Excel.
  • The calendar control (mscomct2.ocx) is not available or is not registered on your machine. To fix this, please follow these instructions: How to register the calendar control.

3. Customize the calendar control

After adding a calendar control to your Excel sheet, the first thing you may to do is to move it to the desired location and get it to fit into a cell.

To resize the datepicker control, turn the Design Mode on, and drag a corner of the control: To resize the datepicker, drag a corner of the control.

Alternatively, with the Design Mode on, select your calendar control, and click Properties: To customize the calendar control, click Properties.

In the Properties window, you can set the desired height, width as well as change the font theme and size: In the Properties window, set the desired height, width, font theme and size

To move the datepicker control, hover your mouse over it and as soon as the cursor changes to a four-pointed arrow, drag the control where you want it. To move the datepicker, drag the control where you want it.

Now that you have successfully added a drop down calendar in Excel, you may also want to link it to a specific cell. It is absolutely necessary if you intend to use the selected dates in formulas.

Let's say, you've written a formula to count the number of orders between the specified dates. To prevent your users from inputting incorrect dates like 2/30/2016, you inserted the dropdown calendars in 2 cells (A2 and B2 in this example). However, your obviously correct COUNTIFS formula returns zero, although you can clearly see a few orders within the specified time period! Excel cannot recognize the value of a date picker control until you link it to a certain cell.

The reason is that Excel cannot recognize the value of a date picker control until you associate it with a certain cell. To fix this, link your date picker controls to some cells in this way:

  1. With the Design Mode on, select the calendar control.
  2. On the Developer tab, in the Controls group, click Properties.
  3. In the Properties windows, find the LinkedCell property, and type a cell reference next to it (A3 in this example): Linking the date picker control to a specific cell

If Excel displays the "Can't set cell value to NULL…" error, just click OK to ignore it.

And now, as soon as you select a date in the dropdown calendar, that date immediately appears in a linked cell. As shown in the screenshot below, Excel has no problem with understanding such dates, and our formula referencing the linked cells (A3 and B3) works perfectly: A formula referencing the linked cells works perfectly.

If you don't want to clutter your worksheet with "extra dates", you can link your date picker controls to the cells where they reside (A2 and B2 in this example). In this case, the underling dates won't be visible to the users, but you and Excel will know they are there and your formula will work faultlessly again: The date picker controls are linked to the cells where the controls reside.

How to register the Calendar control on your machine

In earlier versions of Excel, the Date and Time Picker Control (mscomct2.ocx in Excel 2010 and 2013 and mscal.ocx in Excel 2007) was usually included with the default installation. The users of Excel 2016 and higher will have to download and register this control manually. Here's how:

1. Check if mscomct2.ocx exists on your machine

For starters, check if the Microsoft Calendar Control is available on your machine. To do this, click the Start button (Office button), type mscomct2.ocx (or mscal.ocx in Excel 2007 and earlier) in the Search box, and click Enter.

If the mscomct2.ocx file is found, skip the next step, and proceed with step 3.

2. Download Microsoft Date and Time Picker control

If the Microsoft Date Picker Control is not found on your machine, you can download it using this link. Please remember, this control works only for the 32-bit version of Excel.

Once the mscomct2.exe file is downloaded, extract mscomct2.ocx, and copy it to one of the following folders depending on your Windows' bits:

  • On Windows 32-bit: C:\Windows\System32
  • On Windows 64-bit: C:\Windows\SysWoW64

    Tip. A quick way to check the operating system information is to open Windows Explorer, right click Computer, and click Properties.

You must have the administrative permissions to copy files to the system folders. If you do have the admin permissions, but still get the Destination Folder Access Denied dialog, simply click Continue: Extract mscomct2.ocx and copy it to the system folder.

3. Register the calendar control in your system

Not only the calendar control (mscomct2.ocx) should exist on your computer, it should also be registered in the system. To have it done, perform the following steps:

  1. Click the Start button and type "command" in the search box, but don't press the Enter key.
  2. Right click Command Prompt at the top of the search results, and then click Run as Administrator. Right click Command Prompt, and then click Run as Administrator.
  3. In the Administrator dialog box, enter one of the following commands, and then press Enter:

    For Windows 32 bit:

    C:\Windows\System32\regsvr32.exe mscomct2.ocx

    For Windows 64 bit:

    C:\Windows\SysWoW64\regsvr32.exe mscomct2.ocx Register the calendar control in your system

    Note. By default, the copy/paste shortcuts are disabled in the command prompt window. To paste the command, position the cursor where you want the text to be inserted, then right-click on the command prompt's title bar, point to Edit, and click Paste.

Alternatively, you can copy/paste the command in any text editor such as Notepad, save the file with the .bat extension (e.g. reg.bat) anywhere on your computer, right-click the .bat file, and then click Run as Administrator. Another way to register mscomct2.ocx on your computer.

Either way, mscomct2.ocx should be successfully registered on your machine. Mscomct2.ocx is successfully registered.

Once mscomct2.ocx is registered, restart your Excel, go to the Developer tab, click Insert > More Controls, and Microsoft Date and Time Picker Control will be there.

Note. Although you can register the calendar control for Windows 64 bit, it will work for Office 32 bit only. Even if you add a reference to mscomct2.ocx/mscal.ocx in Excel 64 bit, it will still return the "Could not load an object because it is not available on this machine" error.

Third-party tools to insert calendar in Excel

As already mentioned, Microsoft's Date and Time Picker controls work only in the 32-bit versions of Excel. If moving from 64-bits to 32-bits is not your option, third party tools are the only working solution. Below you will find a few calendars that work with both 32 bit and 64 bit versions of Excel 2019, Excel 2016, Excel 2013, and lower. It would be only natural if we start with our own calendar :)

Ablebits Date Picker for Excel

The users of the Ultimate Suite can find their Excel drop-down calendar on the Ablebits tab in the Date & Time group. The Date Picker is turned off by default, to turn it on, just click this button: Ablebits Date Picker for Excel

Once the Date Picker is activated, a small calendar button appears on the sheet when you type or select a date in a cell. If necessary, you can change date format as usual and the calendar will supply dates in your custom format - a nice feature that Microsoft's Date and Time Picker control lacks. Additionally, the calendar shows how far away the selected date is from today's date. Also, it allows you to quickly get to today's date or switch between one-month and two-month views: Ablebits drop-down calendar for Excel

Moreover, you can also calculate dates right in the calendar! For this, select the target date in your worksheet or in the calendar, and click the Date Calculator button in the upper right corner. Then, click the desired unit on the upper pane and type how many years, months, weeks or days (or any combination of these units) you want to add to or subtract from the target date. After that, press the Enter key to insert the result into the currently selected cell or press F6 to display the calculated date in the calendar (or click one of the buttons shown in the image below).

As an example, let's add 1 year and 60 days to April 1, 2018: Calculate dates directly in your Excel calendar

If you don't have our Ultimate Suite in your Excel yet, you can download a trial version here, or you can go with one of the free drop-down calendars listed below.

Excel Date Picker

Excel Date Picker from is a beautifully designed and easy to use calendar that supports all versions of Excel 2007 to 2016.

It adds the Date Picker button to the ribbon, and optionally, an item to the right click menu. And I confirm that it works without a hitch in my Excel 2016 64 bit. Excel Date Picker

Pop-up Excel Calendar

It is another free pop-up calendar for Excel 2003 to 2016. Although support for 64 bit Excel is declared by the manufacture, it throws sporadic errors in my Excel 2013 and 2016 64 bit.

In all other respects, it's a handy little tool that displays a calendar whenever needed - for cells containing date values, date formats or certain labels. Pop-up Excel Calendar

Pop-up calendars for Excel Online

If you often manage time tables, schedules and to-do lists in Excel Online, you may find the following Calendar add-ins helpful. Calendar - one inserted, the below calendar appears on the sheet enabling you to enter or change a date in a click. Calendar

Modern Calendar & Date Picker - a pop-up calendar that works with the desktop versions of Excel 2013 and 2016, Excel 2016 for Mac, and Excel Online. It includes dozens of themes for you to choose from and costs around $1.50.

Mini Calendar and Date Picker - another low-cost calendar for Excel Online, Excel 2013, Excel 2016 and Excel 2016 for Mac. It allows you to toggle the size of the calendar, show week numbers, switch between the U.S. or ISO calendar systems, and choose different themes.

How to make a calendar in Excel based on template

In addition to spreadsheets that can calculate nearly everything, Microsoft Excel includes a handful of graphic options with drawing tools, clipart, charts, tables, etc. Using these features, you can easily create a weekly or monthly calendar with your own photos and special occasion days such as birthdays or anniversaries. The detailed guidelines to create a custom Excel monthly calendar can be found here.

However, the fastest and easiest way create a calendar in Excel is to pick a free Excel calendar template. For this, just click File > New, and type "calendar" in the search box. Excel will search through thousands of templates online and show you a selection of daily, weekly, monthly and yearly calendar templates grouped into categories, like shown in the screenshot below: To get a selection of Excel calendar templates, click File > New, and type "calendar" in the search box.

Select the calendar template that you liked the most, and click Create: To make a calendar based on a template, click on it, and then click Create.

That's it! The calendar template will open up in a new workbook, and you can print it out straight away or customize to your liking. Generally, an Excel calendar template can be set to any year, some templates also allow setting a day to start the week.

Tip. To ensure that your Excel calendar always displays the current year, you can enter the following simple formula in the year cell: =YEAR(TODAY()) For your Excel calendar to always displays the current year, use this formula.

Well, this is how you can insert a drop-down calendar and make a printable calendar in Excel. Hopefully you will find the information in this tutorial helpful. Anyway, I thank you for reading and hope to see you on our blog next week!


  1. I appreciate your kind informative education that you provide with us on this platform, that we might be able to solve random problems by ourselves.
    Thumbs up guys, keep up doing the good work!

  2. Will this work in VBA Userforms?

  3. Hi..
    I'm using organization laptop and its not possible for me to install any 3rd party tool. moreover there is not any date and time picker in developer tab as its missing from there or i say its not installed. Is there any other way in which i can make any hidden calendar in different sheet and get drop down in main sheet.

  4. How do I change the displayed format of the date?

    It shows 14/08/2018, and I'd like 14 AUG as the format (ideally capitalised but not essential). So it looks like I should go into Design Properties, and set "Custom Format" to "dd mmm" and set Format to "3-dtpCustom" which I assume triggers it to apply the Custom Format box above?

    However that results in 14 00 as the display. Indeed, any variation of mmm in the custom format returns a 00 regardless of the month selected in the drop down.
    What am I doing wrong?

    • I guess by now you may have figured out the problem, but for persons with similar issues, for the custom date format, you have to use capitalized m for month eg. yyyy-MMM-dd

  5. Calendar cell keeps jumping up in left upper corner of the sheet. If I delete and insert again it helps SOMETIMES, but closing and reopen the sheet makes the problem reoccur

  6. Hello,

    I have an online excel sheet i am working on and it has a lot of date columns, hence, i need to add a date picker to the excel online sheet so all other users can adhere strictly to my date format. How can you assist with this?

    Thanks in advance

  7. Hello...
    The choosing of dates, past present and future are great! Is there a function I'm missing to select time? I have a need to enter time in a particular cell. I Have a column for due dates, next to that I have a column for a specific time... the time column can be a function from the date column but with a time format... However, the time is always now.
    Thanks in advance!

  8. Is there any way of accessing a date picker in Excel within Office 365 on a 64 bit machine?

    If not is there any plan to include this functionality in the future?

  9. The date picker is working fine, but when i fix it in a cell after doing all the essential formatting, save it and try reopening the same file the date picker is at the top left corner. I face this issue each and every time I re-open the file. Request you to kindly help me in solving this issue..

  10. Hi,
    this was very helpful to create "How to create calendar in Excel (drop-down and printable)"...
    However when I tried to create a calendar in the same sheet but another cell it does not help..........
    any suggestions please........???

  11. Amazing.. Very Helpful.
    Keep the good work on. :)

  12. Hello.. Is there a way for the date box to appear blank until you click on it and then have the calendar pop up instead of having the date auto populate?

  13. Can someone please help me how to populate dates across columns?

  14. I have inserted the Date Picker successfully but need to formula based on the date picked to show the 'due date' in the next column (28 days from date picked, and also to start colouring from green (1-15 days) to orange (16-27 days) & Red (28 days +). Is this possible? Thanks!

    • Hello,

      If I understand your task correctly, you need to create a rule for conditional formatting.
      You can learn more on how to conditionally format dates and time in Excel in this article.

      Hope this information will be helpful for you.

  15. How do i change the custom (3- dtpCustom) date in the properties drop down.

  16. Great! That works!!! Thank you very much!

  17. Hello. Is there any chance i could copy the date ROM the DatePicker, INTO a cell in the same worksheet? Thank you

  18. Hi I'm looking to create a formula so that when I select a date in the calendar for example 17/10/17 that if would give me the number of days from the 17 to the 31 which I would then want it to calculate say 15/31 of a certain figure is this possible without having a from and to date

  19. Hi,

    I was wondering if you'd guide me how to freeze two different rows in excel (like row no.3 and row no.10)! Is that even possible?


    • Hi Alireza,

      It's not possible to freeze non-adjacent rows in Excel. Only contiguous columns and rows can be freezed.

      • Thanks a million

  20. wow

  21. Hi Svetlana
    Thank you very much! I opted for the Date Picker and it works wonderfully. However, your instructions are so thorougfh and clear I could use any of these date options. Thanks!

  22. Muy buen consejo, agradezco mucho su apoyo. Solucionó un gran problema que tenía.

  23. hi,

    thanks for this topic, it really helped me, however, i installed the add-on and when i send the file to my partners, they were not able to use it as they need the add-on, not all of them are having 32 bit, is there any third party tool that can be embedded within the excel file not the excel application?

  24. Is there a 64-bit option?

  25. I have set up a calendar picker and referenced the cell in the properties so that when I select a date in the dropdown calendar, that date immediately appears in a linked cell. However, my calculation will not update until I click on the cell and then on the formula bar. Updates are set to automatic. I am baffled, I have checkd all the settings on the dates format etc.

  26. Hi there,

    I have followed the instructions to a t and unfortunately I continue to get the following error message:

    The Module failed to load and the specified module could not be found. However, when I open the folder I can see the file there and it appears fine.

    Even when I load Excel and click on the Register Custom... the file does not show up in the System32 folder.



  27. Hi,

    I wish to for the cell with the DatePicker to remain blank as default before the drop-down calendar is selected. How would I go about this please? Any assistance appreciated.


  28. I have inserted the Date Picker successfully but need to formulate based on the date picked to show the 'due date' in the next column (30 days from date picked). Is this possible? Thanks!

  29. "Easy" does not describe the last three hours of fruitless labour.

    I have an expense spreadsheet that needs a pop-up calendar to choose a date for each line of expenses entered. Third-party is not an option, as it would require installing extra software on multiple off-site laptops.

    The internal Excel process you describe does not allow for applying over a range of cells - each cell has to be configured separately. The 'cell content plus twisty' graphic is just that - a graphic. Clicking on it does nothing. The content can only be changed via a drop-down at the top-left of the sheet, and even then the process is fraught with errors. (I wish I could post a pic of what I'm talking about).

    One would think that allowing for a calendar as one of the Data Validation drop-downs should be a standard no-brainer feature.

    • I think I might haver encountered the same thing as you, Alan. When I got the calendar graphic in the upper left hand corner of the spreadsheet, I then de-selected Design Mode - that made the upper left graphic disappear, but allowed me to resize and move the graphic of tha calendar near the cell I clicked on to the cell I wanted and it worked. Problem is - I want to copy this calendar drop/select into a range of cells and I cannot seem to do that I have to create a calendar / drop for each individual cell. For what it is worth....

  30. Hello.. Is there a way for the date box to appear blank until you click on it and then have the calendar pop up instead of having the date auto populate?

  31. I have an excel file with 3 sheets. The second sheet is used to keep some reference data for the first sheet.
    In the first sheet I have columns from A to AM and around 4000 rows also with it.
    I want to add BUTTONS to column AM in each row to lock each row after I add something to the cells.
    e.g. I started adding with A1 till AL; now I want to lock these cells in Row A using the BUTTON in AM so that the cells content cannot be edited unless I put password for UNPROTECT SHEET. (please keep in mind that I already have some data validations and conditional formats done with all the cells, and also a macro for blocking CUT-COPY-PASTE to and fro the sheet.) So I would prefer the password for PROTECT my current settings and the one new for the BUTTON option to be different.

    Can you help me?

  32. This is good one, I wanted to know if I can get the time option too in the calendar to mention. At this point of time I know see the date. Please help

  33. I would like to find out if a client attended his/her appointment. So I'd like to add a yes/no button. If the yes button is pushed, I'd like to pick the date the client attended from my drop down calendar and have it populate the Appointment cell (B3) . If no is pushed, I would like the calendar to appear in the followup cell (O3), where a new date is selected but the color is red. This way we will know to also call this patient.

    Thank you for your help.


  34. How to get a drop down list in FORM?

  35. Really useful post. I downloaded the third-party software, Excel Date Picker and it suits my need perfectly.

  36. Hi

    Thank you Very much its working !!

    Jubin Thoppil

  37. This is great, but I have one problem. How do I get it to open to today's date by default? Currently it is always opening to January.

  38. please tell me how to add a date search box/bar to a excel document.

  39. I am building a spreadsheet for a client and I'd like to use this date picker. Will the client need to download anything to their office/excel in order to use as well?

  40. I put in the dropdown calendar and linked the cell. As soon as I choose from the calendar, Excel reads the date in the linked cell as a text ("2/13/2017")instead of the date number Excel uses for formulas.

    Can you help?

  41. Hi, I installed the date picker control as suggested and it worked beautifully. The problem was that I sent the worksheet to a fiend who did not have it installed and he could not see the calendars. Just for testing I deleted them in his computer and run some Macros that are in the same worksheet. While they continue to work in my computer the line Sheets("Details").Select comes with an error. "Details is the sheet where the calendars were linked to some cells so I suspect that it has to do with them. What do you think?

  42. This was a great help! I still have a few questions but I'm sure I'll figure it out. Thanks for the help.

  43. Thank you Thank you So much you just made my day!!!

  44. I really like this post. very well explained and demonstrated. But i need some more help in Like if i have two columns (A And B) and both have calendar controls but entire A and B columns i need to enter live dates but only from A and B cell with calendar can i do that.

    pl send me the details on my mail id.

    thanks and regards,


  45. Hi
    All those explanation was about excel 2010 and later
    do you have any idea about functioning date picker or register it on excel 2007?
    thanks in advance

  46. Microsoft Date and Time Picker Control not appering...plz suggest

    • Hello Narayan,

      Microsoft Date and Time Picker Control is not available in 64 bit versions of Office. If you are using Office 32-bit, you can download and register the datepicker control using these instructions.

      • Hi, I followed the instructions to add it, and it succeeded. I restarted Excel and still the Microsoft Date and Time Picker Control does not appear under the developer tab > insert > more controls options. What could be causing that?

      • how to add DatePicker instead in a 64-bit version?

  47. Thanx a lot for this post. Useful one

  48. Thank you very much.
    I really need this.

  49. Hello

    0 to 60 against 15

    61 to 100 against 20

    101 to 150 against 30
    How to if formula?

    • Hello Dippak,

      Try the following nested if's:

      =IF(A1>100, 30, IF(A1>60, 20, IF(A1>=0, 15, "")))

      • So Is it not possible to copy the same date picker to a range of cells. Is there any VBa CODE for the same ?

  50. Hi! I love this blog.
    How can I signup to receive these posts to my inbox???

Post a comment

Thank you for your comment!
When posting a question, please be very clear and concise. This will help us provide a quick and relevant solution to
your query. We cannot guarantee that we will answer every question, but we'll do our best :)