Запись данных к электронным таблицам Excel

Запись табличных данных в файл электронной таблицы

Чтобы экспортировать таблицу в рабочей области в файл электронной таблицы Microsoft® Excel®, используйте writetable функция. Можно экспортировать данные из рабочей области в любой лист в файле и в любое место на этом листе. По умолчанию, writetable пишут ваши табличные данные в первый рабочий лист в файле, запускающемся в ячейке A1.

Например, составьте демонстрационную таблицу данных в столбцах и отобразите первые пять строк.

load patients.mat
T = table(LastName,Age,Weight,Smoker);
T(1:5,:)
ans=5×4 table
      LastName      Age    Weight    Smoker
    ____________    ___    ______    ______

    {'Smith'   }    38      176      true  
    {'Johnson' }    43      163      false 
    {'Williams'}    38      131      false 
    {'Jones'   }    40      133      false 
    {'Brown'   }    49      119      false 

Запишите таблицу T к первому листу в новом файле электронной таблицы под названием patientdata.xlsx, запуск в ячейке D1. Чтобы задать фрагмент рабочего листа, вы хотите записать в, использовать Range аргумент пары "имя-значение". По умолчанию, writetable написал имена табличной переменной как заголовки столбцов в файле электронной таблицы.

filename = 'patientdata.xlsx';
writetable(T,filename,'Sheet',1,'Range','D1')

Запишите таблицу T без имен переменных к новому листу под названием 'MyNewSheet'. Чтобы записать данные без имен переменных, задайте пару "имя-значение" WriteVariableNames как false.

writetable(T,filename,'Sheet','MyNewSheet','WriteVariableNames',false);

Запись числовой и текстовые данные к файлу электронной таблицы

Чтобы экспортировать числовой массив и массив ячеек в файл электронной таблицы Microsoft® Excel®, используйте writematrix или writecell функции. Можно экспортировать данные в числовом индивидууме и текстовые переменные рабочей области к любому рабочему листу в файле, и к любому местоположению в рамках того рабочего листа. По умолчанию функции импорта пишут ваши матричные данные в первый рабочий лист в файле, запускающемся в ячейке A1.

Например, создайте демонстрационный массив числовых данных, A, и демонстрационный массив ячеек текста и числовых данных, C.

A = magic(5)
C = {'Time', 'Temp'; 12 98; 13 'x'; 14 97}
A =

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9


C = 

    'Time'    'Temp'
    [  12]    [  98]
    [  13]    'x'   
    [  14]    [  97]

Запишите массиву A в прямоугольную область 5 на 5, E1:I5, на первом листе в новом файле электронной таблицы под названием testdata.xlsx.

filename = 'testdata.xlsx';
writematrix(A,filename,'Sheet',1,'Range','E1:I5')

Запишите массиву ячеек C в прямоугольную область, которая запускается в ячейке B2 на рабочем листе под названием TemperaturesДиапазон можно задать, используя только первую ячейку.

writecell(C,filename,'Sheet','Temperatures','Range','B2');

writecell выводит предупреждение потому что рабочий лист, Temperatures, ранее не существовал, но можно отключить это предупреждение.

Отключение предупреждения при добавлении нового рабочего листа

Если целевой рабочий лист не существует в файле, то writetable и writecell функции выводят это предупреждение:

Warning: Added specified worksheet.

Для получения информации о том, как подавить предупреждающие сообщения, смотрите, Отключают предупреждения.

Ячейки формата в Excel Files

Чтобы записать данные к файлам Excel в системах Windows® с пользовательскими форматами (такими как шрифты или цвета), получите доступ к серверу COM непосредственно с помощью actxserver вместо writetable, writetimetable, writematrix, или writecell. Например, Техническое решение 1-QLD4K использует actxserver чтобы установить связь между MATLAB® и Excel, запишите данные к рабочему листу и задайте цвета ячеек.

Для получения дополнительной информации см. Запуск с COM.

Смотрите также

| |