Borrar filtros
Borrar filtros

Overwrite an existing excel file (multiple sheets)

7 visualizaciones (últimos 30 días)
Francesca Danielli
Francesca Danielli el 28 de Dic. de 2021
Comentada: Francesca Danielli el 29 de Dic. de 2021
Hi everyone!
I have imported an Excel file with N=20 sheets.
Each sheet contains two coloumns.
I create two cell arrays, Cf, Ci in the figure.
The following figure shows how each cella array is made.
Finally, the following figure shows how each table is made (in particular, Var1 e Var2 of Ci correspond to the 2 coloumn of esch excel sheet).
I would like to:
  • add Var1 and Var2 of Cf to each table of Ci;
  • overwrite the existing excel file with the modified sheets --> each sheet will have two coloumn corresponding to Ci and two coloumns corresponding to Cf.
Do you have any suggestion?
Thank you in advance!
  1 comentario
Stephen23
Stephen23 el 28 de Dic. de 2021
"Do you have any suggestion?"
Do NOT use the variable name DIR, because this will shadow the very important inbuilt DIR function.

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 28 de Dic. de 2021
You can call xlswrite() or writetable() one sheet at a time. It should add the new sheets and retain the existing sheets.
  4 comentarios
Francesca Danielli
Francesca Danielli el 29 de Dic. de 2021
I tried :
for k = 1:N_sheet
xlswrite('filename.xlsx',Cf{k},'D1:E1')
end
but I obtained the following error message 'Input data must be a numeric, cell, or logical array.'
--------------------------------------------------------------------------------------------------------------------------------------------
Then, I tried
for k = 1:N_sheet
xlswrite('filename.xlsx',Cf,'D1:E1')
end
but nothing has been written in the Excel file
Francesca Danielli
Francesca Danielli el 29 de Dic. de 2021
SOLVED! I found the error.
Thank you :)

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by