COM을 사용하여 상호 작용된다. 필자는 자주 사용되는 Excel 템플릿이나 데이터 파일을 가지고있을 때 더 많은 제어가 가능하기 때문에이 작업을 선호합니다.
Excel = actxserver('Excel.Application');
Workbook = Excel.Workbooks.Open('myExcelFile.xlsx');
MySheet = Excel.ActiveWorkBook.Sheets.Item(1);
set(get(MySheet,'Range','A1:A10'), 'Value', yourValues);
...
invoke(Workbook, 'Save');
invoke(Excel, 'Quit');
delete(Excel);
이렇게하면 매번 다시 열지 않고도 새로운 데이터를 새로운 범위로 저장할 수 있습니다.
더 나은은 (xlswrite이처럼) (디버그 모드에서 종료와 같은 일을하고 특히) 손실 된 파일의 잠금을 방지하기 위해 oncleanup 함수를 정의하는 것입니다 : 당신의 도움에 대한
...
myWorkbook = Excel.Workbooks.Open(filename,0,true);
cleanUp = onCleanup(@()xlsCleanup(Excel, filename));
function xlsCleanup(Excel,filepath)
try
Excel.DisplayAlerts = 0; %// Turn off dialog boxes
[~,n,e] = fileparts(filepath); %// Excel API expects just the filename
fileName = [n,e];
Excel.Workbooks.Item(fileName).Close(false);
end
Excel.Quit;
end
감사합니다. 그것은 정말로 나를 많이 돕는다 ... –