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 commentaires

Sourin Dey
Sourin Dey le 27 Juin 2016
use blkdiag(A,b) .
Javier Joya
Javier Joya le 27 Juin 2016
I have tried this and still returns an error.
Sourin Dey
Sourin Dey le 27 Juin 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.

Connectez-vous pour commenter.

 Réponse acceptée

Jan Orwat
Jan Orwat le 27 Juin 2016
Modifié(e) : Jan Orwat le 27 Juin 2016

3 votes

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 commentaires

Javier Joya
Javier Joya le 27 Juin 2016
Thank you very much!! For some reason I thought I had to joint both tables before using the writetable function.
ET
ET le 28 Juin 2023
Modifié(e) : ET le 28 Juin 2023
Hello, how do you save the excel file (test.xlsx) in a specific directory. Thanks
Daniel
Daniel le 3 Juil 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.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by