Export/save data into excel in matlab 2014a...
Show older comments
xlswrite('someting.xls',data) make error i.e
Warning: Could not start Excel server for export.
XLSWRITE will attempt to write file in CSV format.
but when i use csvwrite it make an error i.e:
Error using dlmwrite (line 112)
The input cell array cannot be converted to a matrix.
in matlab 2008b this type of error doesn't come: need your help i am tired...
8 Comments
Geoff Hayes
on 31 Jul 2014
Are you running MATLAB through Windows or something else? I get that same error when I run the line of code on my Mac...which makes sense. See this link xlswrite on mac, which while three years old, may still be relevant.
azizullah khan
on 31 Jul 2014
Eric
on 31 Jul 2014
Stupid question, but: Do you have Excel installed?
Assuming you do, what happens when you try:
xlsobj = actxserver('Excel.Application');
xlsobj.Visible = true;
azizullah khan
on 31 Jul 2014
Geoff Hayes
on 31 Jul 2014
What is your data? A matrix, cell array, etc. What are the dimensions of the object?
Geoff Hayes
on 31 Jul 2014
Try the following: in the Command Window type
open xlswrite
This will open the xlswrite.m file in the MATLAB Editor. Put a breakpoint at line 83 (which should be the first line of code). Now back in the Command Window, type
xlswrite('someting.xls',data)
Once you execute this command, the debugger will be enabled within the Editor and the execution should be paused at the line of your breakpoint. Now just step through each line, pressing the Step button (to right of Continue button) until you get to the line 171 which is
Excel = actxserver('Excel.Application');
(Alternatively, just put a breakpoint here.) If this fails, for whatever reason, the subsequent catch block
catch exception %#ok<NASGU>
warning(message('MATLAB:xlswrite:NoCOMServer'));
prints out the warning message that you have observed. What would be interesting though is nature of the exception. While still debugging the code, and presumably you are now within the catch block with the warning message been printed out, in the Command Window type
exception
which is the MException object input to the catch block. When I type this value and press enter, I see
exception =
MException with properties:
identifier: 'MATLAB:UndefinedFunction'
message: 'Undefined function 'actxserver' for input arguments of type 'char'.'
cause: {}
stack: [1x1 struct]
What do you see when you do the same?
azizullah khan
on 1 Aug 2014
Geoff Hayes
on 1 Aug 2014
I'm confused. In my initial comment, I as asked you whether you were running MATLAB on Windows or something else, and you responded with i am using on my pc. So where are you experiencing this problem - on the PC or on the Mac?
What is a poi library? What do jar files have to do with xlswrite?
Answers (1)
Image Analyst
on 1 Aug 2014
0 votes
Are you sure you have full blown Excel and not a "starter version" which is installed free on some new computers. The starter version will not respond to ActiveX commands.
I don't think csvwrite takes cell arrays. Certainly not those with mixed numbers and strings. Evidently it thinks you have a cell array and is trying to call cell2mat on it and it's failing, probably because you have mixed class content in your cells.
If you can start Excel via ActiveX, then use xlswrite1() in the File Exchange to write your cell array. http://www.mathworks.com/matlabcentral/fileexchange/10465-xlswrite1
2 Comments
azizullah khan
on 1 Aug 2014
Image Analyst
on 1 Aug 2014
Sorry, I know nothing about MATLAB on the mac. I don't even know what a poi library file is. I'll put "mac" in the tags for you though. Good luck.
Categories
Find more on Spreadsheets in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!