Hi, I am trying to use the Word COM to create a document, orient it to landscape, change font to Arial, add some merge fields, attach a data source and then save it, I have a hit a problem with the font, here is my code:
Code:
//Start Word.
if(!oApp.CreateDispatch("Word.Application",NULL))
{
AfxMessageBox("Unable to start Word.");
return;
}
//Create a new mail merge document.
oDocs = oApp.GetDocuments();
oDoc = oDocs.Add(vOpt, vOpt, vOpt, vOpt); //for Word 2000
MailMerge oMerge = oDoc.GetMailMerge();
PageSetup oSet = oDoc.GetPageSetup();
_Font oFont;
oSet.SetOrientation(1);
//Insert Fields into the document.
oMMFields = oMerge.GetFields();
Selection oSel;
oSel.TypeText("Jobname: ");
AddFieldAtSelection("jobname");
oSel = oApp.GetSelection();
oSel.TypeParagraph();
oSel.TypeText("Job No: ");
AddFieldAtSelection("jobno");
oSel = oApp.GetSelection();
oSel.TypeParagraph();
oSel.TypeText("From: ");
AddFieldAtSelection("start");
oSel.TypeText(" ");
oSel = oApp.GetSelection();
oSel.TypeText("To: ");
AddFieldAtSelection("end");
oSel = oApp.GetSelection();
oFont = oSel.GetFont();
oFont.SetName("Arial");
oFont.SetSize(24);
oSel.SetFont(oFont);
oSel.ReleaseDispatch();
oMerge.SetMainDocumentType(0); //1=wdMailingLabels
oMerge.OpenDataSource(m_dataname, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt, vOpt);
//oDoc.Close(vFalse, vOpt, vOpt);
//oDoc.ReleaseDispatch();
oApp.SetVisible(TRUE);
oDocs.ReleaseDispatch();
oApp.ReleaseDispatch();
this is my first time using COM and I am finding it very confusing, so please be gentle.
Cheers.