ОБНОВЛЕННЫЙ ОТВЕТ:
Если я правильно понимаю, похоже, что ваша переменная data
является массивом ячеек, где каждая ячейка содержит массив строк размером 1 на N (или, возможно, N на 1). Если вы хотите попробовать вписать каждый из этих массивов ячеек строк в одну ячейку электронной таблицы, вам нужно сначала отформатировать каждую в одну длинную строку.
Вот пример того, как можно форматировать массивы ячеек строк, объединяя их вместе с новой строкой между ними:
data = {{'hello' 'hi' 'hey'} ... %# Sample cell array of 1-by-N
{'world' 'earth' 'everyone'} ... %# cell arrays of strings
{'blah' 'blah'}};
data = cellfun(@(x) {strcat(x,{char(10)})},data); %# Add newline characters
%# to the string ends
data = cellfun(@(x) {deblank([x{:}])},data); %# Concatenate the inner cells and
%# remove the trailing newlines
Теперь, когда каждый массив ячеек строк представляет собой одну длинную строку, каждая строка может быть записана в ячейку электронной таблицы Excel следующим образом:
xlswrite('data.xls',data(:),'Sheet1','E2'); %# Write the data to cells E2 to E4
А вот как выглядит итоговая таблица:
Если вы используете пробел ' '
вместо символа новой строки, вот как выглядит электронная таблица (после настройки ширины строки и столбца):
Функции, используемые в приведенном выше коде: CELLFUN , STRCAT , CHAR , DEBLANK , XLSWRITE .