Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Re: Matlab excel interface
Date: Sun, 3 Mar 2013 16:00:08 +0000 (UTC)
Organization: The MathWorks, Inc.
Lines: 19
Message-ID: <kgvs28$osu$1@newscl01ah.mathworks.com>
References: <kgsbpp$725$1@newscl01ah.mathworks.com> <kgtdp8$4m6$1@newscl01ah.mathworks.com> <kguh7j$650$1@newscl01ah.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: www-03-blr.mathworks.com
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: newscl01ah.mathworks.com 1362326408 25502 172.30.248.48 (3 Mar 2013 16:00:08 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Sun, 3 Mar 2013 16:00:08 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 2264149
Xref: news.mathworks.com comp.soft-sys.matlab:790203

Ah, you may have to do it the slow way then, i.e. opening an instance of Excel and writing to it one cell at a time.  I don't have Excel (or Matlab) to hand, but something like this perhaps:

% Data
dat    = repmat({char(64+ceil(rand(1,2000)*26))}, 10, 10);

% Excel handles
xlsApp = actxserver('Excel.Application');
xlsWbk = invoke(xls.Workbooks, 'Add');
xlsSht = invoke(xlsWbk.Worksheets, 'Item', 1);
xlsRng = invoke(xlsSht, 'Range', 'A1');

% Action
for i = 1:size(dat, 1)
for j = 1:size(dat, 2)

set( get(xlsRng, 'Offset', i-1, j-1), 'Value', dat{i, j} )

end
end