How can I get data from an open Excel file without knowing the file name?
Mostrar comentarios más antiguos
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);
Respuestas (1)
Ankitha Kollegal Arjun
el 24 de Jul. de 2017
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 comentarios
Charlotte McHugh
el 24 de Jul. de 2017
Ankitha Kollegal Arjun
el 25 de Jul. de 2017
To save the workbook, you can add the following line to the code:
SaveAs(book,'myfile.xls')
Massimo Salese
el 7 de Jun. de 2022
And what if i use the dinamic range notation?
cells = sheet.get('Range','A1#','B4#')
Categorías
Más información sobre Spreadsheets en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!