1

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

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

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

4

1 回答 1

0

xlswrite不会很好地自动处理 char 数组、单元格和空矩阵的组合。您可以执行一个循环,在每个单元格数组不为空的情况下写入文件。但是,如果您有像上面这样的数据,其中 C{1} 是一个字符数组,而 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} 都是一个元胞数组(第一个是 <1x1 元胞>),它可能变成:

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

我的测试数据:

C{1} = 'TEST NAME';
C{4} = {'TEST','TEST2'};
于 2013-09-20T13:05:53.363 回答