Apologies if this the wrong list for this question, if so could someone
point me in the right direction!
I am trying to generate an script to process multiple CSV's into a
single excel doc, create tables
and then create a shell report document template. I have managed all
this so far but cannot
seem to add a TOC. From what I can tell I have translated the VBA
command correctly.
Ideally I would like to add it at the start of the document, however I
also cannot move the
selector position & have been trying to just insert a TOC anywhere as a
first step.
$Word = Win32::OLE->GetActiveObject('Word.Application') ||
Win32::OLE->new('Word.Application');
my $document = $Word->Documents->Add;
foreach my $file (getFileListAsArray($basedir,"\.(?:gif|GIF)\$")){
print "Adding $file to document\n";
$name=$file;
$name=~s/$striphead//;
$name=~s/$striptail//;
$document->ActiveWindow->Selection -> {Style} = "Heading 1";
$document->ActiveWindow->Selection -> TypeText("$name\n");
$document->ActiveWindow->Selection -> {Style} = "Normal";
$document->ActiveWindow->Selection -> TypeText("Type Text here
1\n");
$Word->Selection->InlineShapes->AddPicture({
FileName => "$basedir\\$file",
LinkToFile => "False",
SaveWithDocument => "True"});
$document->ActiveWindow->Selection -> TypeText("Type Text here
2\n");
$Word->Selection->InsertBreak({Type=>wdSectionBreakNextPage});
}
$Range = $Word->Selection->{'Range'};
$Word->ActiveDocument->TablesOfContents->Add ({
Range=>$Range,
RightAlignPageNumbers=>"True",
UseHeadingStyles=>"True",
UpperHeadingLevel=>"1",
LowerHeadingLevel=>"4",
IncludePageNumbers=>"True",
AddedStyles=>"",
UseHyperlinks=>"True",
HidePageNumbersInWeb=>"True",
UseOutlineLevels=>"True"
});
$document ->SaveAs( $outfile );
$document ->Close;
Im using Word 2007
many thanks.