How do you write to excel a cell array that contains both strings and numbers?
12 ビュー (過去 30 日間)
古いコメントを表示
I have to write a relatively large cell array to excel. The text is primarily column headers but the data does have some text intertwined in it. Is there a simple way to do this?
I've done some digging but most everything I've found says use fprintf and specify when data is of a specific type. This data is too large to run something like that.
The text data is in specific columns, if there were a way to identify text data as strings and just tell MATLAB that all other fields are numeric, that's viable.
0 件のコメント
回答 (2 件)
Guillaume
2017 年 6 月 2 日
%simple demo
c = {'abcd', 1234; 'foobar', -56}
xlswrite('test.xlsx', c);
I don't know where you've seen most everything that says use fprintf. You cannot write excel files with fprintf which is for writing text files. Excel files are binary (or in newer versions, a complex mess that you'd never write yourself as text).
Fangjun Jiang
2017 年 6 月 2 日
As long as each cell is a single scalar or a single string, what is wrong with using xlswrite() directly?
TestData={'a',1;2,'b'};
xlswrite('ExcelFile',TestData);
3 件のコメント
Bennett
2025 年 1 月 10 日
Can confirm in 2025 that this does not write any text to the resulting xls file. Hoping someone will see this comment as I am still dealing with this issue. Thanks!
Fangjun Jiang
2025 年 1 月 10 日
It might be that iOS does not support xlswrite(). In 2025, you might want to check out these new functions writetable(), writematrix(), writecell().
Check the help document of xlswrite() in your MATLAB version to see what it recommends.
参考
カテゴリ
Help Center および File Exchange で Spreadsheets についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!