Writecell/table to Excel error

60 views (last 30 days)
StephAud
StephAud on 10 Feb 2026 at 9:14
Answered: StephAud on 11 Feb 2026 at 7:59
Hi all,
I can no longer export data to Excel using writecell/table, because the function crashes due to an import issue :
Error using writetable (line 278)
Error: File: createWorkbook.m Line: 80 Column: 12
Unable to find or import 'matlab.io.spreadsheet.internal.BookType'.Imported names must end with '.*' or be fully qualified.
No problem in Matlab R2023, as it does not seem to use the same sub-functions.
Regards,
Stéphane.

Accepted Answer

StephAud
StephAud on 11 Feb 2026 at 7:59
Here is the solution from the support team, which works for me.
rehash toolboxcache
Thank you, everyone.

More Answers (2)

dpb
dpb on 10 Feb 2026 at 16:06
Moved: dpb on 10 Feb 2026 at 18:43
Which OS and show a sample code that fails...
tX=array2table(randn(4,3),'VariableNames',cellstr(('A':'C').'))
tX = 4×3 table
A B C _________ ________ ________ 0.07657 0.50694 -0.54845 0.99138 1.1488 0.075866 1.9897 0.99226 -1.0944 -0.074665 -0.33147 0.67604
writetable(tX,'test.xlsx')
dir
. .. test.xlsx
clear tX
readtable('test.xlsx')
ans = 4×3 table
A B C _________ ________ ________ 0.07657 0.50694 -0.54845 0.99138 1.1488 0.075866 1.9897 0.99226 -1.0944 -0.074665 -0.33147 0.67604
It functions here, of course Excel isn't available on this platform so doesn't quite match what would happen on on Windows system with Office installed.
The specific syntax complained about by the error message exists in all prior versions so something's amiss in that.
  7 Comments
Walter Roberson
Walter Roberson on 11 Feb 2026 at 5:29
Edited: Walter Roberson on 11 Feb 2026 at 5:30
No, I have /Applications/MATLAB_R2025b.app/toolbox/shared/spreadsheet/+matlab/+io/+spreadsheet/+internal but that has
Book.m getSheetNames.m
columnLetter.m readSpreadsheetFile.m
columnNumber.m selectOAuthTypeId.m
createDatetime.m Sheet.m
createGoogleSpreadsheet.m SheetType.m
createWorkbook.m SheetTypeFactory.m
dateFormats.m stringize.m
getExtension.m usedDataRange.m
getRemoteSpreadsheet.m
with no BookType.
Furthermore, when I grep through all of the binary libraries and all of the .xml and all of the source code, then only BookType is a mangled C++ symbol for _spreadsheet_mli::get_book(spreadsheet_mli::MCOSBookType*) -- so I cannot even find any reference to BookType anywhere.
StephAud
StephAud on 11 Feb 2026 at 7:25
I have BookType.m
dir('C:\Program Files\MATLAB\R2025b\toolbox\shared\spreadsheet\+matlab\+io\+spreadsheet\+internal\')
. SheetTypeFactory.m dateFormats.m stringize.m
.. columnLetter.m getExtension.m usedDataRange.m
Book.m columnNumber.m getRemoteSpreadsheet.m
BookType.m createDatetime.m getSheetNames.m
Sheet.m createGoogleSpreadsheet.m readSpreadsheetFile.m
SheetType.m createWorkbook.m selectOAuthTypeId.m

Sign in to comment.


Fangjun Jiang
Fangjun Jiang on 10 Feb 2026 at 16:37
You might have a different writetable.m
>> which -all writetable.m
C:\Program Files\MATLAB\R2025b\toolbox\matlab\io\tabular\iofun\writetable.m
C:\Program Files\MATLAB\R2025b\toolbox\matlab\bigdata\@tall\writetable.m % tall method
C:\Program Files\MATLAB\R2025b\toolbox\parallel\array\distributed\@codistributed\writetable.m % codistributed method

Categories

Find more on Text Data Preparation in Help Center and File Exchange

Products


Release

R2025b

Community Treasure Hunt

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

Start Hunting!