Assign excel data to multi-dimensional array

Hi I want to assign data repetitively in an excel spreadsheet to a n*n*5 dimensional array, ie 5 pages.
% User inputs
ExcelFile = '\InputData.xlsx';
SheetNumber = 1;
InputDataRange = 'B5:Y910';
[alldata, text, ~] = xlsread(ExcelFile, SheetNumber, InputDataRange);
data=alldata(:,:,1)
data=alldata(:,:,2)
data=alldata(:,:,n)
data=alldata(:,:,5).....etc
I get an error message stating "Index exceeds matrix dimensions."
Any ideas? Regards

Respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 22 de Jul. de 2014
Editada: Azzi Abdelmalek el 22 de Jul. de 2014
Change this line (alldata should be the third output argument)
[~,text,alldata] = xlsread(ExcelFile, SheetNumber, InputDataRange);

7 comentarios

bugatti79
bugatti79 el 22 de Jul. de 2014
Hi Azzi,
Im afraid that does not work, still get the same error...
bugatti79
bugatti79 el 22 de Jul. de 2014
For my original script, it seems that each entry read in from excel is in a square bracket...
bugatti79
bugatti79 el 22 de Jul. de 2014
I thought changing alldata from a cell to an array might work still getting the same error
What the size of alldata? type
size(alldata)
bugatti79
bugatti79 el 22 de Jul. de 2014
ans
906 24
I think this might work
[~,text,alldata] = xlsread(ExcelFile, SheetNumber, InputDataRange);
datacell=alldata(:,:);
dataarray = cell2mat(datacell);
data=dataarray;
data(:,:,2)=dataarray;
data(:,:,3)=dataarray;
data(:,:,4)=dataarray;
data(:,:,5)=dataarray;
Mevlut K
Mevlut K el 26 de Dic. de 2020
Hi Azzi
I have seen so many post from you on the Matlab discussion forum. I had a question, that i cannot solve. Do you have any possibility to see that. I share the screenshot from the error.

Iniciar sesión para comentar.

Preguntada:

el 22 de Jul. de 2014

Comentada:

el 26 de Dic. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by