Работа с электронными таблицами Microsoft Excel с помощью .NET

Этот пример создает электронную таблицу, копирует некоторые MATLAB® данные к нему, и закрывает его. В примере используются классы из Microsoft.Office.Interop.Excel.ApplicationClass класс. Для получения информации о классе и использовании интерфейса с различными версиями Excel®, см. документацию по MSDN® веб-сайт https://docs.microsoft.com/en-us/.

Чтобы создать книгу, введите:

NET.addAssembly('microsoft.office.interop.excel');
app = Microsoft.Office.Interop.Excel.ApplicationClass;
books = app.Workbooks;
newWB = Add(books);
app.Visible = true;

Создать лист:

sheets = newWB.Worksheets;
newSheet = Item(sheets,1);

newSheet является System.__ComObject потому что sheets.Item может возвращать различные типы, такие как Chart или Worksheet. Чтобы сделать лист Worksheet, используйте команду:

newWS = Microsoft.Office.Interop.Excel.Worksheet(newSheet);

Создайте данные MATLAB и запишите столбцы 1 и 2 в область значений камер.

excelArray = rand(10);
newRange = Range(newWS,'A1');
newRange.Value2 = 'Data from Location A';
newRange = Range(newWS,'A3:B12');
newRange.Value2 = excelArray;

Добавьте три текстовые строки к столбцу C

% Create a 3x1 System.Object
strArray = NET.createArray('System.Object',3,1);
strArray(1,1) = 'Add';
strArray(2,1) = 'text';
strArray(3,1) = 'to column C';
newRange = Range(newWS,'C3:C5');
newRange.Value2 = strArray;

Измените формат камеры и назовите лист:

newFont =  newRange.Font;
newFont.Bold = 1;
newWS.Name = 'Test Data';

Если это новая электронная таблица, используйте SaveAs метод:

SaveAs(newWB,'mySpreadsheet.xlsx');

Закройте и закройте:

Close(newWB)
Quit(app)

Похожие темы

Внешние веб-сайты