MATLAB Answers


Increment cell number in xlsread

Asked by Christo van Rensburg on 17 Oct 2019
Latest activity Edited by Adam Danz
on 21 Oct 2019 at 21:00
I'm reading values from a excel spreadsheet with xlsread as such:
exp.Vc = xlsread('BD.xlsx', 1, 'E9');
and was wondering if it is at all possible to increment the cell number I'm reading the data from?
Thanks in advance!


Bob Nbob
on 17 Oct 2019
What do you mean by 'increment'? Are you looking to capture multiple cells at once over a range, something like every fifth cell in column E?
xlsread is a nice command, but every time you use it you have to open and close excel. If you are looking to read multiple values from the same excel sheet, I recommend reading the entire range you want first, and then indexing your way through the variable in matlab directly.
So in my original question I read data from cell 'E5'. I want that to increase to cell 'E6' after I've run the program once and so on.

Sign in to comment.

1 Answer

Answer by Adam Danz
on 17 Oct 2019
Edited by Adam Danz
on 21 Oct 2019 at 21:00

Create the range value using sprintf() where you can specify both the column and row values. Then you can control the row number within a loop or just by providing a new row number.
col = 'E';
row = 7;
exp.Vc = xlsread('BD.xlsx', 1, sprintf('%s%d',col,row));
Alternatively, you can just read in all of the data at once and then using indexing to increment through those values.


Sign in to comment.