Export data into excel

5 views (last 30 days)
Benjamin Reeves
Benjamin Reeves on 5 Dec 2018
Answered: Steven Remington on 10 Dec 2018
I keep getting this error.....
Index in position 1 exceeds array bounds (must not exceed 1).
Error in IHC_Continous_Quantification (line 28)
xlswrite('Staining.xlsx', percentage, 'B2:B3');
....from this code...
%Initialize
clc
addpath('/Users/benjaminreeves/Desktop/Test');
for i = 1:2
path = dir(strcat('/Users/benjaminreeves/Desktop/Test'));
filename = strcat(['im', num2str(i),'.tiff']);
images = imread(filename);
img = rgb2gray(images);
level = 0.60;
imbw = imbinarize(img, level);
imwrite(imbw, strcat('/Users/benjaminreeves/Desktop/Test/bwim/imbw', num2str(i), '.tiff'));
imtool(imbw);
total_pixels = numel(imbw);
total_white = nnz(imbw);
total_black = (total_pixels - total_white);
percentage = ((total_black/total_pixels)*100);
xlswrite('Staining.xlsx', percentage, 'B2:B3');
sprintf('The pecentage of imaged tissue, im%1.0f, that is stained is %.3f', i, percentage)
end
....I am brand new to coding and just trying to learn! No background at all.
  3 Comments
Benjamin Reeves
Benjamin Reeves on 5 Dec 2018
seems to be a fundamental error. i just opened a new sheet and tried to do
A = [1, 1]
xlswrite(filename, A)
and i got the same error about "exceeding number of array elements..
Bob Thompson
Bob Thompson on 5 Dec 2018
Edited: Bob Thompson on 5 Dec 2018
Is 'filename' being opened correctly? Can you use xlsread, or fopen on 'filename' and get something useful out of it?
What exactly do you mean by 'opened a new sheet'? Did you make a new sheet in the excel file? If so, you need to specify that is the sheet you want to use.
Do you have the file open already? I don't think this should cause too much of a problem, but it's possible.
Is 'percentage' actually an array of doubles? I assume it is, but I haven't specifically run your code, so I can't check these things myself.

Sign in to comment.

Answers (1)

Steven Remington
Steven Remington on 10 Dec 2018
You may have accidentally created a variable called 'xlswrite' and thus it thinks you are trying to reference the variable, not the function. Try running the following command then rerun your code:
>> clear xlswrite

Categories

Find more on Data Type Identification in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!