1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > word模板生成word报表文档

word模板生成word报表文档

时间:2024-07-31 22:17:05

相关推荐

word模板生成word报表文档

主要功能为根据word模板生成word报表文档,注意引用Interop.Word.dll;

首先要生成word程序对象

Word.Application app = new Word.Application();

根据模板文件生成新文件框架

File.Copy(TemplateFile, FileName);

生成documnet对象

ord.Document doc = new Word.Document();

打开新文挡

doc = app.Documents.Open(ref Obj_FileName, ref missing, ref ReadOnly, ref missing,

ref missing, ref missing, ref missing, ref missing,

ref missing, ref missing, ref missing, ref Visible,

ref missing, ref missing, ref missing,

ref missing);

doc.Activate();

将光标定位到新的书签(模板中定义了书签的位置),下面代码为在光标位置输出一行,然后回车

//光标转到书签

for (int bookIndex = 0; bookIndex < 5; bookIndex++)

{

object BookMarkName = "BookMark" + bookIndex.ToString();

object what = Word.WdGoToItem.wdGoToBookmark;

doc.ActiveWindow.Selection.GoTo(ref what, ref missing, ref missing, ref BookMarkName);

doc.ActiveWindow.Selection.TypeText("文明单位" + bookIndex.ToString() + "zaddd 25 大学");

doc.ActiveWindow.Selection.TypeParagraph();

}

输出完毕后,最后关闭doc对象

object IsSave = true;

doc.Close(ref IsSave, ref missing, ref missing);

完整事例代码如下:

usingSystem;

usingSystem.IO;

usingSystem.Data;

usingSystem.Configuration;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Web.UI.WebControls.WebParts;

usingSystem.Web.UI.HtmlControls;

publicpartialclass_Default:System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

Word.Applicationapp=newWord.Application();

//模板文件

stringTemplateFile=@"D:MyworkExcelReportsServerReportServerTempalteSmallList.doc";

//生成的具有模板样式的新文件

stringFileName=@"C:DocumentsandSettingsAdministrator桌面"+DateTime.Now.ToString("yyyyMMddHHmmssfffffff")+".doc";

//模板文件拷贝到新文件

File.Copy(TemplateFile,FileName);

Word.Documentdoc=newWord.Document();

objectObj_FileName=FileName;

objectVisible=false;

objectReadOnly=false;

objectmissing=System.Reflection.Missing.Value;

//打开文件

doc=app.Documents.Open(refObj_FileName,refmissing,refReadOnly,refmissing,

refmissing,refmissing,refmissing,refmissing,

refmissing,refmissing,refmissing,refVisible,

refmissing,refmissing,refmissing,

refmissing);

doc.Activate();

//光标转到书签

for(intbookIndex=0;bookIndex<5;bookIndex++)

{

objectBookMarkName="BookMark"+bookIndex.ToString();

objectwhat=Word.WdGoToItem.wdGoToBookmark;

doc.ActiveWindow.Selection.GoTo(refwhat,refmissing,refmissing,refBookMarkName);

doc.ActiveWindow.Selection.TypeText("文明单位"+bookIndex.ToString()+"zaddd25大学");

doc.ActiveWindow.Selection.TypeParagraph();

}

objectIsSave=true;

doc.Close(refIsSave,refmissing,refmissing);

Response.Write("<scriptlanguage='javascript'>alert('生成模板成功!')</script>");

}

}

附:

光标到 书签Title 的位置

object BookMarkName="Title";

object what =Word.WdGoToItem.wdGoToBookmark;

Doc.ActiveWindow.Selection.GoTo(ref what ,ref missing,ref missing,ref BookMarkName);

在当前的光标写文本

Doc.ActiveWindow.Selection.TypeText("变更通知");

当前的光标换行

Doc.ActiveWindow.Selection.TypeParagraph();

当前的光标设置格式(举例 对齐方式) Doc.ActiveWindow.Selection.ParagraphFormat.Alignment=Word.WdParagraphAlignment.wdAlignParagraphRight;

注意 ParagraphFormat 是设置字体的格式的地方

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。