I am having following code:
Source_files = [specified directory]
len = length(Source_files);
for j = 1 : len
[status,sheets] = xlsfinfo(Source_files)
sheetIndex = find(strncmp(sheets, '#', 1));
end
sheetIndex variable's value gets overwritten on every iteration. I want to have a variable wanted_sheets constituting names of all the sheets starting with '#' from all the files.

 채택된 답변

Stephen23
Stephen23 2018년 2월 14일
편집: Stephen23 2018년 2월 14일

0 개 추천

Use indexing:
Source_files = [specified directory]
N = numel(Source_files);
C = cell(1,N);
for k = 1:N
[status,sheets] = xlsfinfo(Source_files{k});
C{k} = find(strncmp(sheets, '#', 1));
end

댓글 수: 2

Ghenji
Ghenji 2018년 2월 14일
편집: Ghenji 2018년 2월 14일
Thank you for your reply, Now this gives me only sheet number for this files. How do i get sheetnames?
Secondly, this numbers(sheet no.) are repeating how can i avoid this?
lets say I have these files with their sheetnames:
File1 : #sheet1, sheet2, #sheet3, sheet4, sheet5
File2 : sheet1, sheet2, #sheet3, #sheet4, sheet5
File3 : #sheet1, sheet2, #sheet3, sheet4, sheet5
This is how i want,
wanted_sheet = #sheet1, #sheet3, #sheet4
Stephen23
Stephen23 2018년 2월 14일
편집: Stephen23 2018년 2월 14일
First collect the sheet names, then do any processing after the loop:
N = numel(Source_files);
C = cell(1,N);
for k = 1:N
[~,C{k}] = xlsfinfo(Source_files{k});
end
C = [C{:}];
C = C(strncmp(C,'#',1));
C = unique(C)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

질문:

2018년 2월 14일

편집:

2018년 2월 14일

Community Treasure Hunt

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

Start Hunting!

Translated by