Для этого потребуется создать уравнение MathType, а затем добавить его в качестве объекта в файл Excel через ActiveX.Я не нашел никакого способа вызвать MathType из MATLAB, не говоря уже о том, чтобы переместить полученный объект в файл.
Одна альтернатива - построить вашу формулу на рисунке MATLAB , затем захватить и вставить рисунок в виде изображения в файл Excel через ActiveX.Вот пример для построения формулы:
hFigure = figure('Position', [100 100 300 200], 'Color', 'w'); % Create white figure
hAxes = axes(hFigure, 'Position', [0 0 1 1], 'Visible', 'off'); % Create invisible axes
text(hAxes, 0.5, 0.5, '$$y = \sum_{i=1}^N a_i*x_i$$', ... % Create equation text
'Interpreter', 'latex', ...
'FontSize', 30, ...
'HorizontalAlignment', 'center');
И полученная фигура:
Теперь вы можете напечатать эту фигуру вбуфер обмена и вставьте его в лист Excel с ActiveX:
excel = actxserver('Excel.Application'); % Create server object
excelWorkbook = excel.Workbooks.Add(1); % Add a workbook
excelSheet = excel.ActiveSheet; % Get the active sheet
dpi = get(groot, 'ScreenPixelsPerInch'); % Get screen dpi
print(hFigure, sprintf('-r%d', dpi), ... % Print the figure at the screen resolution
'-clipboard', '-dbitmap'); % to the clipboard as a bitmap
excelSheet.Range('B2').PasteSpecial(); % Paste from clipboard (top left corner
% of image will be in the cell 'B2')
excelWorkbook.SaveAs('formula.xlsx'); % Save workbook to a file
excelWorkbook.Close(); % Close workbook
excel.Quit(); % Quit server
excel.delete(); % Delete server object
А вот как это выглядит в файле Excel: