Adding Headers and Footers to Holes in Template in Matlab Report

I have created a template in Microsoft word where I added Holes in the header and footer. Now I am trying to use matlab to fill it out.
This is the code I am using.
docHeaders = rpt.CurrentDOCXSection.PageHeaders;
while ~strcmp(docHeaders.CurrentHoleId,'#end#')
docHeaders.CurrentHoleId
docHeaders.CurrentHoleType
switch docHeaders.CurrentHoleId
case 'HeaderASTM'
append(docHeaders,app.ASTMVersionDropDown.Value);
end
moveToNextHole(docHeaders);
end
close(docHeaders);
the holes match, append method return an object, but when I open the document, the holes are empty.

Answers (1)

No I havent. I did a work around instead where I created different versions of the word template

5 Comments

Thank you fot your answer!
I have created a template in Microsoft word (Template.dotx) with 2 holes in the header.
Here is the code:
import mlreportgen.report.*;
import mlreportgen.dom.*;
D = Document('myDoc','docx','Template.dotx');
open(D);
docHeaders = D.CurrentPageLayout.PageHeaders;
% Filling first hole
docHeaders.moveToNextHole;
append(docHeaders,'Text Hole #1');
% Filling second hole
docHeaders.moveToNextHole;
append(docHeaders,'Text Hole #2');
close(D)
rptview(D)
When I open the document, the holes are empty like you but if I double click in the header in word like if I wanted to edit manually the document then it magically appears!
Oh I never tried that. Its not very helpful for me though as I am creating multiple multi page reports that need to get printed and it will be a pain to go to each hole in the footer and header and click each time.
I wonder if their is some way to refresh the word page at the end.
Yes it's like if Word needed a refresh at the end.
something like this might work.
https://www.mathworks.com/matlabcentral/answers/953-how-do-i-open-the-header-footer-in-a-word-programatically-from-matlab?s_tid=answers_rc1-3_p3_Topic

Sign in to comment.

Products

Release

R2018a

Asked:

on 12 Mar 2019

Commented:

on 9 Aug 2019

Community Treasure Hunt

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

Start Hunting!