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

4 次查看(过去 30 天)
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 个评论
Mohammad Sami
Mohammad Sami 2020-1-29
The data needs to be loaded into Matlab first, before you can actually search the string you are looking for.
avram alter
avram alter 2020-1-29
yeah, or course. i left that out here as I thought it was extraneous. thank you!

请先登录,再进行评论。

采纳的回答

avram alter
avram alter 2020-1-29
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

更多回答(0 个)

标签

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by