如何使用Matlab将单元格数组导出到Excel中?

我有一个单元格数组看起来像这样

'NIPPON TELEGRAPH & TELPHONE COR' 'IMMERSION CORP' [] 'NISSAN MOTOR CO LTD' [] [] [] [] <1x5 cell> 'STERIS CORP' <1x134 cell> [] <1x4 cell> [] <1x2 cell> 

这是公司名称列表,空括号表示名称不可用,<1×4 cell>表示在该单元格中有四个公司的名称。 现在我想把这个数组导出到Excel中,特别是我想把这些<1×4单元>类似的单元格放入Excel中同一行的四个单元格中。 我怎样才能做到这一点?

xlswrite不会自动处理字符数组,单元格和空matrix的组合。 对于单元格数组不为空的情况,您可以在该文件中写入文件。 然而,如果你有像上面这样的数据,其中C {1}是一个char数组,而C {some n} =一个名称的单元数组,它会变得有些不雅:

 for n = 1:length(C) if ischar(C{n}) xlswrite('testfile.xls',C(n),1, sprintf('A%d',n)); elseif iscell(C{n}) xlswrite('testfile.xls',C{n},1, sprintf('A%d',n)); end end 

在每个C {n}是单元arrays(第一个是<1×1单元>)的情况下,它可能变成:

 for n = 1:length(C) if ~isempty(C{n}) xlswrite('testfile.xls',C{n},1, sprintf('A%d',n)); end end 

我的testing数据:

 C{1} = 'TEST NAME'; C{4} = {'TEST','TEST2'};