How to change the date-format of an existing file ?

3 views (last 30 days)
Dear community,
Applying the 'readcell'-function to one of my existing files (here: .xls and .xlsx- files) I get the following error:
'Error using readcell (line 151)
Could not recognize the date/time format of '15-März-2019'. You can specify a format using the 'InputFormat' parameter. If the date/time text contains day, month, or time zone names in a language foreign to the 'en_US' locale, those might not be recognized. You can specify a different locale using the 'Locale' parameter.'
How can I change the it? Please consider the attachment.

Answers (1)

Walter Roberson
Walter Roberson on 18 Jan 2021
datetime('15-März-2019', 'Locale', 'de')
ans = datetime
15-Mar-2019
So use readcell() with 'Locale', 'de'
  6 Comments
Haron Shaker
Haron Shaker on 27 Jan 2021
Edited: Haron Shaker on 27 Jan 2021
Thanks!
You're right, in this cutout it is not defined.
I still get an error:
Error using datetime (line 546)
Wrong number of arguments.
Error in trytorun (line 27)
xlsData(:,2) = cell2mat( datetime(xlsData{:,2}, 'Locale', 'de') );
By the way: Does it make a difference in using 'readcell' or 'readtable'?
Walter Roberson
Walter Roberson on 27 Jan 2021
readtable returns a table object, whereas readcell returns a cell array in which each entry is a separate cell, so Yes, it does matter.
Using {:,2} would be wrong for readcell but I think it should work for readtable as it should return the second variable as a single argument.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!