Since I never got a real answer to this question, I'll post the answer that I found and is workig flawlessly for me! Revisiting what matlab was doing passing commands through ActiveX, I realized it was very similar to running VBA scripts in Word, so I wrote a couple functions that save my plots to temp files and writes a single VBA script for reading them in and adding captions, so I can dump a pile of images into a Word file, add the appropriate captions etc. and... presto! An automatic way to insert a bunch of images into Word! I'm finding 360 dpi .png files look perfect! Best!
(* Read this into a new notebook using Get["X:\\mathematica\\WordInsert.m"] *)
BeginWordInsert[path_] := Module[{},
mmamacro = OpenWrite[path <> "\\mma_insert.bas"];
WriteString[mmamacro,
"Attribute VB_Name = \"NewMacros\"\n\n", "Sub mma_insert()\n",
"Attribute Macro1.VB_ProcData.VB_Invoke_Func = \
\"Normal.NewMacros.mmaInsert\"\n",
"'\n", "' ", "mmaInsert1 Macro\n", "'\n", "'\n"];
mmaInsertN = 1;
pathMI = path;];
(* *)
EndWordInsert[] :=
Module[{}, WriteString[mmamacro,"End Sub"]; Close[mmamacro]];
(* *)
WordInsertP[graphic_, title_:" Caption", IMres_:300,
fileType_: "png"] := Module[{},
fileN =
pathMI <> "\\mmaEP" <> ToString[mmaInsertN] <> "." <> fileType;
Export[fileN, graphic, ImageResolution -> IMres];
WriteString[mmamacro, "Selection.TypeParagraph\n",
If[mmaInsertN > 1,
"Selection.TypeParagraph\nSelection.TypeParagraph\n", ""],
"Selection.InlineShapes.AddPicture FileName:= _\n",
"\"", fileN, "\", ", "LinkToFile:=False, _\n",
"SaveWithDocument:=True\n",
"Selection.ParagraphFormat.Alignment=wdAlignParagraphCenter\n",
"Selection.Start = Selection.Start-1\n",
"Selection.InsertCaption Label:=\"Figure\" , _\n",
"Title:=\" ", title,
"\", Position:=wdCaptionPositionBelow,ExcludeLabel:=0\n",
"Selection.ParagraphFormat.Alignment=wdAlignParagraphCenter\n",
"'\n"];
mmaInsertN = mmaInsertN + 1;
];
(* *)
WordInsertT[graphic_, title_: " Caption", IMres_: 300,
fileType_: "png"] := Module[{},
fileN =
pathMI <> "\\mmaEP" <> ToString[mmaInsertN] <> "." <> fileType;
Export[fileN, graphic, ImageResolution -> IMres];
WriteString[mmamacro, "Selection.TypeParagraph\n",
If[mmaInsertN > 1,
"Selection.TypeParagraph\nSelection.TypeParagraph\n", ""],
"Selection.InlineShapes.AddPicture FileName:= _\n",
"\"", fileN, "\", ", "LinkToFile:=False, _\n",
"SaveWithDocument:=True\n",
"Selection.ParagraphFormat.Alignment=wdAlignParagraphCenter\n",
"Selection.Start = Selection.Start-1\n",
"Selection.InsertCaption Label:=\"Table\" , _\n",
"Title:=\" ", title,
"\", Position:=wdCaptionPositionAbove,ExcludeLabel:=0\n",
"Selection.ParagraphFormat.Alignment=wdAlignParagraphCenter\n",
"'\n"];
mmaInsertN = mmaInsertN + 1;
];
Print["\n**You've loaded the WordInsert Package**\n\nTo start your \
session, run \"BeginWordInsert[path]\", where the path string points \
to your working directory.\n\nNote escape characters need to be used \
in the path definition \n(IE. \"X:\\\\mathematica\").\n\nWrapers \
WordInsertP and WordInsertT are for inserting (P)lots and (T)ables \
respectively.\n The insert functions are of the form \
WordInsert[graphic,title,ext], \nwhere graphic is any Mathematica \
graphic object and the title is the string used in Word for the \
Figure or Table caption (needs to be in quotes).\n ext is the file \
extension defining the type of graphic output to use (IE. \"png\").\n\
\nThis package writes a \".bas\" file that can be inported into MS \
Word.\nAll Plots and Tables will be inserted with captions when \
\"mmainsert\" macro is run in Word.\n\nTo end your WordInsert session and finalize the .bas file creation,\n you \
must execute the \"EndWordInsert[]\" function.\n\n
A typical run sequence:\n\nBeginWordInsert[\"X:\\mathematica\"]\nWordInsertP[g1,title1]\nWordInsertP[g2,title2]
WordInsertT[g3,title3]\nEndWordInsert[]\n\n"]
CellEvaluationFunction
that writes to word documents from Mathematica using Applescript. If you are on windows I'd like to see what Matlab are doing for any clues as t how this might work in Mathematica $\endgroup$