Why the exact same command (xlswrite) work with some varible but not others of the same kind?

As in title, when using
xlswrite('Max.xls',[Max1; Max2; Max3; Max4; Max5; Max6; Max7; Max8; Max9; Max10])
everything's fine. a Max.xls is generated. BUT, when using
xlswrite('min.xls',[min1; min2; min3; min4; min5; min6; min7; min8; min9; min10])
an "Error using vertcat CAT arguments dimensions are not consistent." pops up..
Max1-10 and min1-10 are both texts.
Can anyone explain this? Doesn't really make sense to me..
Thank you !

1 comentario

It has nothing to do with xlswrite, but has to do with the concatenation with the brackets.

Iniciar sesión para comentar.

 Respuesta aceptada

Character arrays have to be rectangular. So you can't do this ['123', '12345678']. If your texts are different sizes, then you need a cell array. You need a cell array anyway, otherwise xlswrite will put one only character into each Excel cell, instead of putting the whole string into a single cell. So try this:
ca = {min1; min2; min3; min4; min5; min6; min7; min8; min9; min10};
xlswrite('min.xls', ca);

Más respuestas (1)

because your min strings are not same length
char(min1,min2,min3)
or
strvcat(min1,min2,min3)

Etiquetas

Preguntada:

el 7 de Sept. de 2012

Community Treasure Hunt

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

Start Hunting!

Translated by