Set default date in form table column control to =TODAY()

When I enter =TODAY() for the Default date it changes to 01/01/1600

I don’t think you can use a function in this place. Maybe a TRIGGER can set the value on storage…

Table design view default date
https://superuser.com/questions/1174199/need-todays-date-as-default-value-in-a-form-field-in-libre-office

Setting TODAY() for a default of the GUI is impossible.
There are different solutions:

  • Set the field as Dropdown → Yes. The default will be TODAY and you only have to press ‘OK’.
  • Set the field in the table as DEFAULT CURRENT_DATE():
    ALTER TABLE "MyTable" ALTER COLUMN "MyDate" SET DEFAULT CURRENT_DATE;
  • Create a query, which gives CURRENT_DATE. Set the forms as subforms to this query. Connect to mainform by this CURRENT_DATE. But: This construction will always set the CURRENT_DATE and you could only see the rows with date of today.

I used maybe, a I was not willing to research wich database @goedible is using…
.
The idea to use a macro after update is also a good idea (and would work even with dBase etc.

yep.
probably need a FAQ in Faq/Base - The Document Foundation Wiki,
along with Ask/Guide - How to use the Ask site - The Document Foundation Wiki #More_details

Here is a simple macro that will enter today’s date in the targetDate field of a new record in form/subform type table control. Call the macro from the After Update event of any updatable column which when updated, will also enter the default targetDate.

Sub defaultDate(aEv as Object)
Dim objA, objB
Dim strA$
objA=aEv.source.parent.parent
If objA.isNew()=false then Exit sub
objB=objA.columns.getByName(“targetDate”) 'data field name, Not form column
strA=Format(Now(),“YYYY-MM-DD”)
objB.updateString(strA)
End Sub