Azzera filtri
Azzera filtri

Info

Questa domanda è chiusa. Riaprila per modificarla o per rispondere.

Table data direct to Excel, not via file

2 visualizzazioni (ultimi 30 giorni)
Marc Elpel
Marc Elpel il 22 Apr 2020
Chiuso: MATLAB Answer Bot il 20 Ago 2021
I would like to put a context menu on a UI Table to Open the data/send direct to Excel. I can do this via a temporary file, but would like to know if it is possible to send the data direct to remove the need to save/open the data via a file?
My current code (which works) is:
data = [{'Cat', 1, 2, 3};{'Dog', 4, 5, 6};{'Chicken', 7, 8, 9}]
T = cell2table(data)
writetable(T,'temp.csv')
winopen('temp.csv')
What I was looking for was something of the form:
data = [{'Cat', 1, 2, 3};{'Dog', 4, 5, 6};{'Chicken', 7, 8, 9}]
system('Excel',data)
Aside from the fact this does not work, system commands appear to leave an open command window when complete. I was able to get just the system(Excel) part to work, but had to look up the full path of the Excel executable (surprised it was not in the system path def). This left the command window open, and does not solve the original problem of calling with with data.
Final Q: What is the right form for just launching the app (Excel, Word, etc) without data? Is there a better way than the system() command?

Risposte (1)

Ameer Hamza
Ameer Hamza il 22 Apr 2020
Why not directly
writetable(T,'temp.xlsx')
instead of exporting it to a csv.
  3 Commenti
Ameer Hamza
Ameer Hamza il 22 Apr 2020
I don't have a window platform, but does the function winopen() not work on MS Excel?
Marc Elpel
Marc Elpel il 22 Apr 2020
Winopen() does nto work opening Excel (might be because it is not in the system path).
Regardless, that would not solve the issue unless I could do winopen('Excel' [data]), which does not appear to be valid syntax.

Questa domanda è chiusa.

Community Treasure Hunt

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

Start Hunting!

Translated by