Good Afternoon, I will try to keep this to the point. I have created two tables and they ready to be exported to excel. Say T1 is [1600x5] and t2 is [2x4]. How can I concatenate those two tables into one so then I will be able to use the "writetable" function? I have tried the "horzcat" and the "union" functions but I keep getting errors due to the dimensions not being the same. Is there a way around this?
Date = datetime('today'); M1 = table(Temp_K, Pressure, inverse_temp, N_Log, k_value_slope); (1600x5) Matrix M2 = table(MM, Date, Pan_Size, Experiment_Date); (2x4) matrix M = horzcat(M1, M2); M = table(Temp_K, Pressure, inverse_temp, N_Log, k_value_slope, MM, Pan_Size); name = input('Enter the name you wish to save the file as, use single quotes (ex. filename.xlsx) : '); writetable(M, name,'Sheet',1,'Range','B1');

3 Kommentare

Sourin Dey
Sourin Dey am 27 Jun. 2016
use blkdiag(A,b) .
Javier Joya
Javier Joya am 27 Jun. 2016
I have tried this and still returns an error.
Sourin Dey
Sourin Dey am 27 Jun. 2016
  1. x=[1 2 3 6 ;4 5 6 51 ;7 8 9 2 ;10 11 12 11];
  2. y=[4 5 6;7 8 9];
  3. C = blkdiag(x,y);
  4. C(1:2,5:7)=y;
  5. C(5:6,:)=[] . thus [4*4] & [2*3] can be concatenated , or any other dimensions as well.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Jan Orwat
Jan Orwat am 27 Jun. 2016
Bearbeitet: Jan Orwat am 27 Jun. 2016

3 Stimmen

You don't have to join tables before exporting them. You can just create spreadsheet and then add other data in other sheets or in the same sheet, specifying target cells.
Maybe you would like separate sheets?
warning('off','MATLAB:xlswrite:AddSheet'); %optional
writetable(M1,'test.xlsx','Sheet',1);
writetable(M2,'test.xlsx','Sheet',2);
Or in one sheet:
writetable(M2,'test2.xlsx','Sheet',1);
writetable(M1,'test2.xlsx','Sheet',1,'Range','E1');

3 Kommentare

Javier Joya
Javier Joya am 27 Jun. 2016
Thank you very much!! For some reason I thought I had to joint both tables before using the writetable function.
ET
ET am 28 Jun. 2023
Bearbeitet: ET am 28 Jun. 2023
Hello, how do you save the excel file (test.xlsx) in a specific directory. Thanks
Daniel
Daniel am 3 Jul. 2023
You can specify the directory in 'test.xlsx'.
writetable(M1,'C:\Users\JohnDoe\Documents\MATLAB\test.xlsx','Sheet',1);
You can find the working directory using pwd.
S = pwd + "\test.xlsx"
writetable(M1,S,'Sheet',1);
Replace S with the filepath and filename.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Gefragt:

am 27 Jun. 2016

Kommentiert:

am 3 Jul. 2023

Community Treasure Hunt

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

Start Hunting!

Translated by