Insert a date from date field into a cell


I have seen this wiki.
What I’d like to do is to insert the value of the date field from calender into a cell, so a user can choose any date and it will be automatically inserted into a cell.

Is it possible to do that?


EDIT: here is my Date Field:

it’s in italian but you can see that I have only General and Events tabs.


This is possible by macro as explained in this wiki page. It is in French, but it includes a sample spreadsheet that you might inspire you.


  • Create the macro (copied from the wiki)
  • Specify the target cell in the Data Fieldof the Control’s Data tab
  • Select the macro by clicking the […] button of Text modified the Events tab:


ok thanks, I have created the macro but now how can I associate it to the date field?

@Kioturt12 I edited my answer to include steps and a screenshot

Thanks again, now the problem is that I don’t have the Data tab in Data Field Properties. Do you know why?

It would be easier if you explained how you proceed, rather than guess why you do not have the expected result… Did you draw your control with Form Controls toolbar then More Controls then Date field?

@PYS, yes I did, my Date Field looks exactly like your. I uploaded an image.

Thank you for the screenshot… Sorry I do not know… What system & Version do you use (I have only tested on windows)?

I have linux mint 17.2 x64

Is this BASIC macro can be converted to Python macro? I wondering how …

One basic as list can be created with Menu/Data/Validity.

From today in this sample the selection begins 7 days before up to two years after.

In this case done for English USA, it’s important format properly “DDD MM/DD/YYYY” for your language to get it recognized as date by the selection.

DDD = the first three letters of week day.
DD = day in month.
MM = month.
YYYY = year, four digits.

The finel format in the cell is the cell format not the selection format.

HI- my advice is to put the range in a sheet =TODAY()-7+ROW(A1:A740) and format as date (optionally hidden). So you can just use the address of this range (e.g. C1:C740) as validity source. The advantage is that the selection in the list is a date and not a text.


the Choice from the Textlist is handled as User-Input and so directly convertet into Date.
but in case you need such Date-Validity more than once, its an advantage to use a real Cellrange.

Be aware that this solution is locale dependent and will fail with all locales that do not use the M/D/Y date format (i.e. almost everything that is non-USA). To be internationally applicable use the ISO 8601 date format YYYY-MM-DD instead that is understood in every locale, even en-US.
DDD YYYY-MM-DD should also work.