Word document "Saveas2()" method no longer working

14 visualizaciones (últimos 30 días)
Alex
Alex el 18 de Jun. de 2025
Comentada: Alex el 19 de Jun. de 2025
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 comentarios
dpb
dpb el 18 de Jun. de 2025
"... 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 el 19 de Jun. de 2025
Looks like it was fixed this morning, good to know for the future. Thanks.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Use COM Objects in MATLAB en Help Center y File Exchange.

Productos


Versión

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by