Word document "Saveas2()" method no longer working

조회 수: 14 (최근 30일)
Alex
Alex 2025년 6월 18일
댓글: Alex 2025년 6월 19일
As of the past few days, I seem to be no longer able to save word documents created through matlab. Several months ago I ran the following script which opens an existing word document and saves it as another document.
reportPath = 'Table_out.docx';
templateName = append(pwd, '\Table_Inject_Test.docx');
actx_word = actxserver('Word.Application');
Execution of script actxserver as a function is not supported:
/MATLAB/toolbox/matlab/winfun/actxserver.m
actx_word.Visible = true;
trace(actx_word.Visible);
wordTemplate = actx_word.Documents.Open(templateName); % Open template
wordTemplate.SaveAs2(reportPath); % Save copy as report
Once I started getting this error in another project, I reverted back to this script to check it wasn't something I had done within the word template to cause the error.
However when I try to run the same script now, I get the following error:
% Unrecognized method, property, or field 'SaveAs2' for class
% 'Interface.0002096B_0000_0000_C000_000000000046'.
% Error in tableinjecttest2 (line 7)
% wordTemplate.SaveAs2(reportPath); % Save copy as report
Has something changed within the WordInterface object? I see there is a 'saveobj' method but that doesn't seem to save the document either. That just gives me a different error:
% Unable to resolve the name 'wordParent.saveobj'.
%
% Error in tableInjectTest (line 22)
% wordTemplate.saveobj(reportPath)
  댓글 수: 4
dpb
dpb 2025년 6월 18일
"... function h = actxserver(progID, varargin) text doesn't appear at the top of the output."
That's because built-in functions don't have the source code available as with the m-file.
This then is a bug when Mathworks built/shipped the builtin version. Submit an official bug report..
If you have an earlier release, a temporary workaround could be to copy the m-file into a location on your working path above the toolboxes to use the prior version instead.
Alex
Alex 2025년 6월 19일
Looks like it was fixed this morning, good to know for the future. Thanks.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Use COM Objects in MATLAB에 대해 자세히 알아보기

제품


릴리스

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by