when i'm trying to save as excel xls to xlsx format in actxserver it doesnot work
5 views (last 30 days)
Show older comments
Im having file abc.xls , want to save this file as test.xlsx using actxserver it shows pop error file format extension not valid. but when i do the same in manually it works. could any one please give solution for this.
here my code.
sExcel=actxserver('Excel.Application');
EWorkBooks=sExcel.Workbooks;
EFile=EWorkBooks.Open([cd '\' 'abc.xls']);
EFile.SaveAs([cd '\' 'test.xlsx']);
EFile.Close;
sExcel.Quit;
0 Comments
Answers (1)
dpb
on 3 Jul 2022
Edited: dpb
on 3 Jul 2022
You can't pass an OS command to be executed as the file name; my recollection is also that the .Open command needs a fully-qualifiled file name; partial file names didn't work..(that is a recollection; I didn't go recheck, but it's become an inate habit with me and I think that I discovered this some time back is why).
You also will need the second parameter to the Close call to force the action without requiring user intervention to answer the popup dialog Q?.
My preamble/close code looks something like:
WorkbookFullFileName=fullfile('path','workbookFile.xlsx');
excel=actxserver('Excel.Application');
excelWorkbook = excel.Workbooks.Open(WorkBookFullFileName);
% ... do work with workbook here...
excel.ActiveWorkbook.Save;
excel.ActiveWorkbook.Close(false);
delete(excel);
clear excel
0 Comments
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!