How can I get data from an open Excel file without knowing the file name?

4 vues (au cours des 30 derniers jours)
Charlotte McHugh
Charlotte McHugh le 20 Juil 2017
Commenté : Massimo Salese le 7 Juin 2022
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);

Réponses (1)

Ankitha Kollegal Arjun
Ankitha Kollegal Arjun le 24 Juil 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 commentaires
Ankitha Kollegal Arjun
Ankitha Kollegal Arjun le 25 Juil 2017
To save the workbook, you can add the following line to the code:
SaveAs(book,'myfile.xls')
Massimo Salese
Massimo Salese le 7 Juin 2022
And what if i use the dinamic range notation?
cells = sheet.get('Range','A1#','B4#')

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by