MATLAB Answers

The technique of using "xlsread"

2 views (last 30 days)
weijie
weijie on 30 Mar 2012
Hi, I am extracting lots of data from 100 Excel sheets. They are financial statement table. For instance in sheet one, the "Total assets" is in row A10, but in second table, "Total assets" is in row 17. How can I use 'xlsread' function to extract data from the given name? Thank you!
  1 Comment
Leah
Leah on 30 Mar 2012
Is "Total assets" always in column A? Was your example suppose to be: Sheet1 A10 and Sheet2 A17?

Sign in to comment.

Answers (3)

Leah
Leah on 30 Mar 2012
First you have to read in both numbers and txt
[num txt]=xlsread('Book2.xlsx','Sheet1')
then you can find the cell that contains Total assets
ismember(txt,'Total assets')
Without knowing exactly what else is in your sheet it's hard to give you much more. Hope it helps.

Image Analyst
Image Analyst on 30 Mar 2012
Unless you use ActiveX programming, reading 100 Excel files will be horribly slow because it will involve launching Excel, reading the data, and shutting down Excel 100 times. Better to just open Excel once, reading the files, then shutting it down once. That will bring the time from very many minutes to probably less than one minute.

Richard
Richard on 3 Apr 2012
The following link may be useful:
<http://www.mathworks.com/matlabcentral/fileexchange/22365-function-for-faster-data-transfer-matlab-%3C-%3E-excel>
It follows from image analysts' suggestion.

Community Treasure Hunt

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

Start Hunting!

Translated by