フィルターのクリア

Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Table data direct to Excel, not via file

2 ビュー (過去 30 日間)
Marc Elpel
Marc Elpel 2020 年 4 月 22 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
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?

回答 (1 件)

Ameer Hamza
Ameer Hamza 2020 年 4 月 22 日
Why not directly
writetable(T,'temp.xlsx')
instead of exporting it to a csv.
  3 件のコメント
Ameer Hamza
Ameer Hamza 2020 年 4 月 22 日
I don't have a window platform, but does the function winopen() not work on MS Excel?
Marc Elpel
Marc Elpel 2020 年 4 月 22 日
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.

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by