How to define range using a variable in xlsread?

19 vues (au cours des 30 derniers jours)
Rishabh Mittal
Rishabh Mittal le 25 Sep 2019
Commenté : Rishabh Mittal le 27 Sep 2019
I would like to read a row from excel file in Matlab. The row's staring and end columns are defined but I would like to use a variable to define the row number. I have tried the following:
row_no = 50;
x = xlsread('yourfile.xlsx', 'sheet', ['B50:EHI' num2str(row_no)]);
The above code allows the use of variable `row_no` to define the end cell `EHI50`. But can this also be done for referring to the starting cell `B50`?

Réponse acceptée

Adam
Adam le 25 Sep 2019
Modifié(e) : Adam le 25 Sep 2019
doc sprintf
can create a string out of variables, e.g.
columnStr = 'B';
startRow = 50;
endRow = 50;
sprintf( '%s%i:EHI%i', columnStr, startRow, endRow )
Or if you always want the same start and end row you can simplify it by using the same variable for both.
  1 commentaire
Rishabh Mittal
Rishabh Mittal le 27 Sep 2019
Thanks Adam for your answer. I also found an alternate solution:
['B' num2str(row_no) ':EHI' num2str(row_no)];
Both of the solutions work.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by