When using a writetable to write a table file containing data in datetime format to Excel, the saved datetime data in Excel is not in the same format as the datetime data

9 Ansichten (letzte 30 Tage)
The table data is as follows:
Use the following writetable function code to save data to Excel,the exported result is shown in the following figure:
The time display is incomplete.
How to set the exported time format to be the same as the original data?
writetable(T, filePath);

Akzeptierte Antwort

Cris LaPierre
Cris LaPierre am 9 Apr. 2025
Bearbeitet: Cris LaPierre am 9 Apr. 2025
For Excel files, writetable writes table variables containing datetime arrays as Excel dates. The time data is still all there, but Excel applies its own formatting to dates. You will need to set the display format in Excel using their settings to see the same details.
  2 Kommentare
HCH
HCH am 10 Apr. 2025
This method is effective.You are truly an expert in this field!
I have obtained the required custom format by following the prompts in the above answer and the steps 1, 2, and 3 in the image below:
But can similar or other settings be made directly in the code to make the exported time in Excel conform to the above format.
Because this time format is directly saved to Excel in other software, how can Matlab achieve such functionality?
Cris LaPierre
Cris LaPierre am 10 Apr. 2025
Not using writetable, especially if you are creating a new file. There is probably a way to do it using activeX commands. You may be able to modify the code shared in this answer: https://www.mathworks.com/matlabcentral/answers/2140571-how-to-format-cell-font-size-font-color-and-alignment-in-excel-from-matlab-gui-program

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Thorsten
Thorsten am 9 Apr. 2025
Try
writetable(T, filePath, Encoding="ISO-8859-15", DateLocale="en_US");

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by