Automatically create variations of the same variable?

3 次查看(过去 30 天)
I have this code. At the moment there are only three check boxes giving the option for Type 1, 2 and 3. Multiple can be selected at once.
% mat(1 through to 3) = zeros(4,16);
if app.chkType1.Value == 1
mat1 = xlsread('Matrices.xlsx','C3:R6');
end
if app.chkType2.Value == 1
mat2 = xlsread('Matrices.xlsx','C9:R12');
end
if app.chkType3.Value == 1
mat3 = xlsread('Matrices.xlsx','C15:R18');
end
% sum mat(1 through to 3)
How can I write this, so that it automatically assigns numbers to the mat title?
i.e, I could maunually write out:
mat1 = zeros(4,16);
mat2 = zeros(4,16);
mat3 = zeros(4,16);
How can I write this in a single line, such that if I had 100 check boxes rather than 3, I would not have to write out 100 lines of zeros?
Thank you

采纳的回答

Walter Roberson
Walter Roberson 2020-4-7
Do not use separate variables. use a cell array. You can have a table of range entries and loop through a list of check boxes, pulling out the range and xlsread() and assign into the cell array

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Workspace Variables and MAT-Files 的更多信息

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by