Save Excel worksheet as csv Using com Object

10 次查看(过去 30 天)
I'm trying to save an Excel worksheet as a CSV. Here's my code:
% Connect Matlab to Excel
e = actxGetRunningServer('Excel.Application');
% Select 1st sheet
eSheets = e.ActiveWorkbook.Sheets;
eSheet1 = eSheets.get('Item',1);
eSheet1.Activate
% Save as csv
SaveAs(eSheet1,'C:\myfile.xlsx') % Works - Saves Excel as xlsx
SaveAs(eSheet1,'C:\myfile.csv','xlCSV') % Does not work
I'm going off the documentation here: WorkSheet.SaveAs. It must be a simple formatting issue of how to actually call Excel methods, but I cannot figure out how to save the worksheet as a csv. Any help would be greatly appreciated.

采纳的回答

Philip
Philip 2018-10-6
Apparently 'xlCSV' just stands for '6', which Excel interprets as saving as CSV format. So if I do:
SaveAs(eSheet1,'C:\myfile.csv','6') % Saves as CSV
this works and solves my issue. I have no idea why 'xlCSV' does not work, but I'll leave this post in case others have similar issues in the future.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Use COM Objects in MATLAB 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by