append (a row) to the end of an excel sheet

41 visualizaciones (últimos 30 días)
Moh. Saadat
Moh. Saadat el 5 de Abr. de 2020
Editada: Marcel el 30 de Nov. de 2022
Hi,
I would like to know if there is any way to simply append to the next available row in an existing excel sheet. I know I can do the append with the writematrix function by specifying the 'Range' property.
writematrix(matrix_to_add, filename, 'Range', 'A1:D20'); %% this adds the matrix_to_add variable in the specified block
However, I do not wish to explicitly specify the range. The rows being added are quite long: 1000 elements. Hence, specifying range will be inconvenient. Thus, the solution I am looking for will simply add the row to the 51st row in the excel sheet if there are already 50 rows in the sheet.
Thanks!
  3 comentarios
Brian Bean
Brian Bean el 20 de Nov. de 2021
Is there a way to do the same thing, without altering the column width or any previous rows. When I have merged cells in row 1, use writemateix, row 1 cells becomes unmerged. Thanks!
Walter Roberson
Walter Roberson el 21 de Nov. de 2021
If I recall correctly, with new enough versions of MATLAB, if you use writecell() then it will not change the format of existing cells.

Iniciar sesión para comentar.

Respuestas (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov el 21 de Nov. de 2021
This is how you can get it:
FName = 'DATA.xlsx';
for ii=1:5
writematrix(magic(3), FN, 'WriteMode','append')
end

Marcel
Marcel el 18 de Nov. de 2022
Editada: Marcel el 30 de Nov. de 2022
This is how im appending text to a xls file. cellstr("Test") would be your data
writecell(cellstr("Test"), "file.xls", 'WriteMode','append');

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by