xlswrite from cell and strcat error 0x800A03EC
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Dave
am 14 Apr. 2018
Kommentiert: Walter Roberson
am 14 Apr. 2018
GreetingsI have a variable
A={'H$1';'H$2';'H$3'} %a 4x1 cell
% I need to generate an xlsx file with
=(YesH$1No) in cell A1
=(YesH$2No) in cell A2
=(YesH$2No) in cell A3
% I can xlswrite AA elements to excel wo problem
for ii=1:3
AA(1,ii)=A(ii)
BB{1,ii}=strcat('=(Yes',AA{ii},'No)')
end
xlswrite('fileA.xls', AA)
xlswrite('fileB.xls', BB)
% for BB because of the equal and parenthesis it outputs an error
Error using xlswrite (line 219)
Error: Object returned error code: 0x800A03EC
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 14 Apr. 2018
Try
writetable(cell2table(BB),'fileB.xls', 'WriteVariableNames', false)
Note that this would be for the case where you want the cells to contain those literal strings, not for the case where you are trying to write macros at those locations. For that task of writing macros, what I find is https://stackoverflow.com/questions/48190180/can-matlab-write-a-macro-in-an-excel-file-via-activex
3 Kommentare
Walter Roberson
am 14 Apr. 2018
Hack workaround: disable / uninstall Excel for the moment. That would cause writetable() to use internal routines to do the writing instead of talking to Excel.
Or, Hack Workaround: edit writeXLSFile.m and change
book = createWorkbook(filename, ext, true);
to
book = createWorkbook(filename, ext, false);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Spreadsheets finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!