MATLAB: How to read in data from Excel where I have the row range stored as a variable

xlsread

I am reading data from an excel sheet, and can read my data perfectly fine when I define the row range as a number, such as:
LPHYB = xlsread('Tungurahua_Activity_Log_temp.xlsx', ...
'Hourly_Seismic_Record', 'G699:G1004');
However, I would like to be able to store my first row and last row as a variable, like this:
LPHYB = xlsread('Tungurahua_Activity_Log_temp.xlsx', ...
'Hourly_Seismic_Record', 'Gstartrow:Gendrow');
This is not working. The error message reads:
'Maximum variable size allowed by the program is exceeded.'

Best Answer

  • Matlab's error message is not clear. You can define the string as following:
    LPHYB = xlsread('Tungurahua_Activity_Log_temp.xlsx', ...
    'Hourly_Seismic_Record', sprintf('G%d:G%d', startrow, endrow));