Why do I get this xlswrite error?

3 views (last 30 days)
Hey everybody,
quick question concerning the following problem:
I can't find my mistake here. Matlab keeps teeling me I have too many input arguements. In line 228 I want to write the Vector Kmittelpunkt to the Cells C5:E5 in excel.
In line 229 I only want to write one value named "angledeg" to the to Cell G5 in Excel.
Thanks a lot for your help in advance, I'm a beginner in Matlab and just don't see the problem.
Thanks a lot,
Johnny

Accepted Answer

Walter Roberson
Walter Roberson on 30 Jun 2020
Either remove the keyword 'sheet' or else before the last input add the keyword 'range'. You can use positional arguments but as soon as you use the first keyword argument you have to stop using positionals.
  2 Comments
Jonathan Babitsch
Jonathan Babitsch on 30 Jun 2020
Now I get the error message:
Input data must be numerical, cell or logical array...
What can I do about this?
Thanks in advance Walter!!
Walter Roberson
Walter Roberson on 30 Jun 2020
You cannot xlswrite() symbolic values. You would have to xlswrite() double() of the symbolic values.
The part of the symbolic value that appears on the screen is numeric and can be converted to double. If you have any unresolved symbolic variables and you want to write out formulas, then you need to do something like
C = arrayfun(@(formula) char(formula), Kmittelpunkt, 'uniform', 0);
and then C would be a cell array of character vectors that you could xlswrite(), provided that you are using MS Windows with Excel installed.
Note: these days we recommend using writetable() or writecell() or writematrix() instead of xlswrite()

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!