How can I get data from an open Excel file without knowing the file name?
3 次查看(过去 30 天)
显示 更早的评论
I have an unsaved .xlsx file open from another script, and I'm trying to write a Matlab program to extract the data from the file. There is no filename or path, however I am able to access the Active Workbook and corresponding Sheet by using ActiveX. It possible for me to pull the file data from the Workbook or Sheet object?
Here is how I get the workbook and sheet:
ex = actxGetRunningServer('Excel.Application');
book = ex.ActiveWorkbook;
sheet = book.Worksheets.Item(1);
0 个评论
回答(1 个)
Ankitha Kollegal Arjun
2017-7-24
You can add two additional lines to your code as follows:
ex = actxGetRunningServer('Excel.Application');
book = ex.ActiveWorkbook;
sheet = book.Worksheets.Item(1);
% Below command will read cells A1-B4
cells = sheet.get('Range','A1','B4'); %Specify the range of cells you want to read from the Excel File
data = cells.Value; %'data' will be a cell array containing the excel cell values
3 个评论
Ankitha Kollegal Arjun
2017-7-25
To save the workbook, you can add the following line to the code:
SaveAs(book,'myfile.xls')
Massimo Salese
2022-6-7
And what if i use the dinamic range notation?
cells = sheet.get('Range','A1#','B4#')
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spreadsheets 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!