フィルターのクリア

Converting datenum to datetime when using writetable

12 ビュー (過去 30 日間)
Joel
Joel 2023 年 4 月 13 日
コメント済み: Stephen23 2023 年 4 月 13 日
Hi all
I want to export some datetime data to excel. I dont know how.
In addition, for certain years, there are no values. I show this by replacing values by zero
A = datenum(t0_pos1); %values 2021
B = datenum(t0_pos12); %values 2022
if isempty(B)==1
B=zeros(1,1);
end
C = [];
C(:,1) = A;
C(:,2) = B;
borjan=array2table(C,'VariableNames',{'2021','2022'});
writecell(G2,'asd2.xlsx','Sheet',1,'Range','H2')
writetable(borjan,'asd2.xlsx','Sheet',1,'Range','H3')
I got numbers into excel, but I want the datenum to be converted to datetime (yy-mm-dd-hh).
  1 件のコメント
Stephen23
Stephen23 2023 年 4 月 13 日
Do not convert perfectly good DATETIMEs to deprecated DATENUMs!
You can easily merge two DATETIME arrays using the EMPTY method of the appropriate class:
A = datetime(2023,1,1:9).'
A = 9×1 datetime array
01-Jan-2023 02-Jan-2023 03-Jan-2023 04-Jan-2023 05-Jan-2023 06-Jan-2023 07-Jan-2023 08-Jan-2023 09-Jan-2023
B = datetime(2023,1,[])
B = 0×0 empty datetime array
C = datetime.empty;
C(1:numel(A),1) = A;
C(1:numel(B),2) = B
C = 9×2 datetime array
01-Jan-2023 NaT 02-Jan-2023 NaT 03-Jan-2023 NaT 04-Jan-2023 NaT 05-Jan-2023 NaT 06-Jan-2023 NaT 07-Jan-2023 NaT 08-Jan-2023 NaT 09-Jan-2023 NaT
and then WRITEMATRIX as usual. Avoid deprecated DATENUM, DATESTR, and DATEVEC.

サインインしてコメントする。

回答 (1 件)

Cris LaPierre
Cris LaPierre 2023 年 4 月 13 日
You convert your datetimes to datenums, and then write those numbers to Excel, which is what you are seeing.
Don't convert your datetimes to datenums. Then, you can use the format cells option in Excel to set the date format it gets displayed with.

カテゴリ

Help Center および File ExchangeDates and Time についてさらに検索

製品


リリース

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by