DateTime 24 hour format

The DateTime fields in my app show differently in different views.
In the table and detail views they show AM/PM in the form it’s 24 hour.
This is confusing when being filled in and particularly when being edited.
Can I do anything about this?

@morgan Any thoughts?

Hi - Same here - I have 24 hour in the form view (what i want) but in the table view it shows as AM/PM. I also note if i concatenate an expressions to ensure I keep locale format (DD/MM/YY) if reverts back to AM/PM as well.

Any resolution on this?

Would be nice to force a time format as I have lots of people who set the AM / PM wrong and add an extra 12 hours to their log entries, so in 24 hour it a lot more obvious you have added 12 hours.


From Spreadsheet:

All my settings are UK. I presume that is why it uses AM/PM in the table and detail views, but in the form it’s 24 hour, which is a bit weird, and confusing.

I’m having the same issue. Its AM/PM in Table view but in Form and Details view its 24h. Its rather confusing. My Locale is also set to the English (US).

Not sure if it matters, but the Google Sheets column is also set to AM/PM. I’d like for it to be 12h in all views if possible.

Something new? To date I still have the same problem.
I think it is necessary to improve the presentation of dates in a uniform way, in all the views of the application and in all the devices that use the same app.
It should be possible to configure both the date format and the time format, for each field, or in UX> Options with the parameters DD / MMM / YY HH: MM: SS TT

Have you checked this page?


Thanks @LeventK! I recently got some help from @Suvrutt_Gurjar with this kind of issue:

At the time, I wondered how @Suvrutt knew to use text() to convert a time into a duration because there’s nothing about it on the “Date and Time Expressions” page:

I realize that, strictly speaking, something like text( ***,“HH:MM:SS”) is a text expression and not a time expression but, still, it would be nice if it could be mentioned or linked to from the “Date and Time Expressions” page. I found it to be essential for computing durations.

It would also be nice to have links to other time related expressions, such as EXTRACTTIMES() etc from this page.

Hi @Kirk_Masden,

I came to know about TEXT() function in the recent community post. Please refer below

Incidentally, @Fabian 's post on “Round /Ignore Seconds” was around the same time. So I used the functions mentioned in TEXT() article while participating in @Fabian 's and subsequently your post.


I went ahead and added the Text function (edit: to the above article) to make it more discoverable. It’s a brand new feature and we just announced it today!


Hi @Steve_Howard,

All the functions that you have added in TEXT() are very useful to get the desired combinations of date and time formats.

Thank you for this very useful addition to functions list.

1 Like

I didn’t know that. Thanks a lot!

If we want to be sure that something is recognized as a duration (not a time), we need to add an extra 0 at the top: e.g. “001:00:00” + “001:00:00” will result in “002:00:00”. The TEXT() expression doesn’t seem to allow that, though. TEXT(“001:00:00”,“HHH:MM:SS”) doesn’t produce “001:00:00”. I wonder if that capability could be added. Currently, if I have trouble with durations inside of an expression I can divide the expression into separate duration columns and then add those. It would be nice, though, if TEXT(“001:00:00”,“HHH:MM:SS”) could produce “001:00:00” and thereby insure that the result is recognized as a duration.

I tried a workaround where I used CONCATENATE() to add a “0” to the top, but that didn’t work when I tried to add durations within a single expression.

I also tried the following:

Actually–and confusingly–the three leading digits to designate a Duration is only for literal Duration values in expressions. That’s why your CONCATENATE() expression doesn’t work: the result of the CONCATENATE() is a Text value even though it looks like a Duration value, and you can’t the add a Duration value to a Text value.

To convert a Time to a Duration, subtract a zero Time value (e.g., "00:00:00") from the Time to be converted:

([time] - "00:00:00")

@Steve has what looks to be the underlying answer.

If for whatever reason you really do need the text “001:00:00”, you can always use “0HH:MM:SS”. Anything that’s not a special format character gets reproduced literally in the output.

I just realized I hadn’t documented, this, but that’s now updated.


Thanks to both @Steve_Howard and @Steve Coiie. I’m particularly happy to learn @Steve Coile’s leson about how to convert times to durations. I tried it out and it works well. Very good to know! :slight_smile:

1 Like

In my opinion the problem is not in the way of converting dates to text, but in how to choose the format in which the app presents them, that should be something eligible in the UX> OPTIONS Tab.
In the example of the image, the date is the result of a Reference, therefore its format cannot be modified, and instead of showing 1/9/2019 (September 1, 2019) it shows 9/1/2019 ( January 9, 2019). This format inversion for our date format, generates many complications, and it is necessary to create multiple virtual columns to display the dates in the correct format, or put the correct format in the Display property and display it correctly in the Field Title, What is very sloppy.
The same happens with the hours, in South America we use the 24-hour format and it is very confusing that the dates appear with the AM / PM format.

Fechas appsheet

Fechas appsheet1

1 Like