link 生成固定格式的word文档,如分析报告之类,可以先建立好固定格式的文档模板,把需要动态插入数据或者其他东西的位置标记为书签,web页面的程序再用数据替换书签.
protected void Button_Click(object sender, EventArgs e)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
Object Nothing = System.Reflection.Missing.Value;
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//取得Word文件保存路径
object filename = @SaveAs.Text;
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
object dotName = @"c:\test.dot";
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//创建一个名为WordApp的组件对象
Microsoft.Office.Interop.Word.Application WordApp = new Microsoft.Office.Interop.Word.ApplicationClass();
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//创建一个名为WordDoc的文档对象
Microsoft.Office.Interop.Word.Document WordDoc = WordApp.Documents.Open(ref dotName, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing);
//Microsoft.Office.Interop.Word.Document WordDoc = WordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing);
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
Response.Write("##" + WordDoc.Bookmarks.Count + "##");
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
foreach (Bookmark bm in WordDoc.Bookmarks)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
if (bm.Name == "Value")
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
bm.Select();
bm.Range.Text = TextBox2.Text;
}
else if (bm.Name == "ItemName")
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
bm.Select();
bm.Range.Text = TextBox1.Text;
}
else if(bm.Name=="FcstValue")
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
bm.Select();
bm.Range.Text = TextBox3.Text;
}
else if (bm.Name == "ModelName")
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
bm.Select();
bm.Range.Text = TextBox4.Text;
}
else if (bm.Name == "IncreaseRate")
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
bm.Select();
bm.Range.Text = TextBox5.Text;
}
}
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//将WordDoc文档对象的内容保存为DOC文档
WordDoc.SaveAs(ref filename, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing);
//关闭WordDoc文档对象
WordDoc.Close(ref Nothing, ref Nothing, ref Nothing);
//关闭WordApp组件对象
WordApp.Quit(ref Nothing, ref Nothing, ref Nothing);
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//返回结果
result.Text = "文档路径:<a href='" + SaveAs.Text + "'>" + SaveAs.Text + "</a>(点击链接查看)<br/>生成结果:成功!";
}