search through an excel file, and save sheet and cells as variables

5 views (last 30 days)
I have an excel file that wil have up to 15 sheets in it. I have added a small example here that demonstrates what it looks like. basically, each sheet has 4x8 cells filled with an alphanumeric codes, with no codes repeating. Is there a way to enter one of the codes, and then matlab will search through the excel file, returning the sheet name and row to be saved in a variable?
for example, in the file I added here, Sheet2, row 4 begins with qwwj8434. for example
code = input('please enter code: ', 's');
>> qwwj8434
Sheet_name = Sheet2
Row_name = 4
I would specifically just be looking for the first code per row, if that helps at all.
Any help would be much appreciated.
  2 Comments
Mohammad Sami
Mohammad Sami on 29 Jan 2020
The data needs to be loaded into Matlab first, before you can actually search the string you are looking for.
avram alter
avram alter on 29 Jan 2020
yeah, or course. i left that out here as I thought it was extraneous. thank you!

Sign in to comment.

Accepted Answer

avram alter
avram alter on 29 Jan 2020
this is what the code looks like:
filename = 'examplesheet.xlsx';
[~, sheets] = xlsfinfo(filename);
rows_found = [];
sheets_found = {};
in = input('input code: ', 's');
for K = 1 : length(sheets)
this_sheet = sheets{K};
[~, ~, raw] = xlsread(filename, this_sheet);
[rowNum, colNum] = find( strcmp(in, raw));
if ~isempty(rowNum)
rows_found = [rows_found; rowNum];
sheets_found = [sheets_found; repmat({this_sheet}, length(rowNum), 1)];
end
end

More Answers (0)

Tags

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!