●操作Word

前提:电脑上需要安装Office

第一步:添加引用。Microsoft.Word.xxx.Object.Library

  注意:把引用中的Microsoft.Office.Interop.Word的属性中的“嵌入互操作”设为false。否则上面的代码会报错。

第二步:导入命名空间。using MSWord = Microsoft.Office.Interop.Word;//MCWord可以用来替代Microsoft.Office.Interop.Word

第三步:创建Word应用程序。

        MSWord.Application wordApp = new  MSWord.ApplicationClass();

第四步:操作Word

1、新建

            MSWord.Document wordDoc = wordApp.Documents.Add();//创建一个空文档
            MSWord.Document wordDoc = wordApp.Documents.Add(@"E:\aaa.docx");//根据指定的word文档创建新的文档

            //使其可见
            wordApp.Visible = true;

2、打开

            MSWord.Document wordDoc = wordApp.Documents.Open(@"E:\aaa.docx");//打开指定路径下的word文档

3、向word中添加内容

            wordDoc.Paragraphs.Last.Range.Text = "这是第一行\n";    //将覆盖最后一个段落的内容
            wordDoc.Paragraphs.Last.Range.InsertAfter("这是后面的内容");    //在最后一个段落的末尾追加内容
            wordDoc.Paragraphs.Last.Range.InsertBefore("这是后面的内容");    //在最后一个段落的开始插入内容

4、保存文档

            wordDoc.SaveAs2(@"E:\bbb.docx");

5、关闭Word文档

            wordDoc.Close(true);

6、退出Word应用程序

            wordApp.Quit();

7、操作字体

            wordDoc.Paragraphs.Last.Range.Font.Bold = 1;
            wordDoc.Paragraphs.Last.Range.Font.Italic = 1;
            wordDoc.Paragraphs.Last.Range.Font.Size = 32;
            wordDoc.Paragraphs.Last.Range.Font.Name = "楷体";
            wordDoc.Paragraphs.Last.Range.Font.Underline = MSWord.WdUnderline.wdUnderlineDotDotDash;
            wordDoc.Paragraphs.Last.Range.Font.ColorIndex = MSWord.WdColorIndex.wdRed;

            wordDoc.Paragraphs.Last.Range.Text = "这是修改后的字体样式";

8、操作单元格

            MSWord.Document wordDoc = wordApp.Documents.Add();

            //造一个5行5列的table表格
            MSWord.Table table = wordDoc.Paragraphs.Last.Range.Tables.Add(wordDoc.Paragraphs.Last.Range,5,5);
            table.Borders.Enable = 1;    //设置边框可见
            table.Borders.InsideColor = MSWord.WdColor.wdColorRed;
            table.Borders.OutsideColor = MSWord.WdColor.wdColorBlue;
            table.Borders.OutsideLineWidth = MSWord.WdLineWidth.wdLineWidth225pt;

            //给表格中的单元格添加内容
            for (int i = 1; i <= 5; i++)
            {
                if (i == 1)
                {
                    table.Rows[i].Shading.BackgroundPatternColor = MSWord.WdColor.wdColorDarkYellow;
                }
                for (int j = 1; j <= 5; j++)
                {
                    table.Rows[i].Cells[j].Range.Text = "第" + i + "行,第" + j + "列";
                }
            }
                wordApp.Visible = true;

//下面这行代码设置表格一行的背景色
table.Rows[i].Shading.BackgroundPatternColor = MSWord.WdColor.wdColorDarkYellow;

9、插入图片

            wordDoc.InlineShapes.AddPicture(@"E:\cyl.jpg",false,true);
            //设置图片宽高的绝对大小
            //wordDoc.InlineShapes[1].Width = 200;
            //wordDoc.InlineShapes[1].Height = 150;
            //按比例缩放大小
            wordDoc.InlineShapes[1].ScaleWidth = 30;
            wordDoc.InlineShapes[1].ScaleHeight = 30;

10、操作书签

  需要提前在Word文档中设置好书签

            wordDoc.Bookmarks["xingming"].Range.Text = "马晨";
            wordDoc.Bookmarks["xingbie"].Range.Text = "男";
            wordDoc.Bookmarks["minzu"].Range.Text = "汉族";
            wordDoc.Bookmarks["shengri"].Range.Text = "1991-6-1";
            wordDoc.Bookmarks["zhengzhimianmao"].Range.Text = "共青团员";
            wordDoc.Bookmarks["zhaopian"].Range.InlineShapes.AddPicture(@"e:\cyl.jpg");
            wordDoc.Bookmarks["zhaopian"].Range.InlineShapes[1].Width = 80;
时间: 2024-11-05 14:51:11

●操作Word的相关文章

C#操作Word的超详细总结

本文中用C#来操作Word,包括: 创建Word: 插入文字,选择文字,编辑文字的字号.粗细.颜色.下划线等: 设置段落的首行缩进.行距: 设置页面页边距和纸张大小: 设置页眉.页码: 插入图片,设置图片宽高以及给图片添加标题: 插入表格,格式化表格,往表格中插入数据: 保存Word,打印Word: 重新打开Word等. Visual studio版本:Visual Studio 2012(2010应该也可以) 准备工作: /* 1. 添加引用COM里面的 Microsoft Word 12.0

ASP.NET 操作WORD 遇到的两个问题之后的解决办法

因为用到ASP.NET操作word,根据网页内容在服务端生成word之后,供用户下载. 在本机测试时,一切正常,当我发布到服务器之后,问题来了 1,提示:未将对象引用设置到对象的实例. 搜素之后,按照网上的内容开始折腾,才发现这个问题真烦人. 根据网友的帖子,cmd 输入"dcomcnfg.exe", 如图所示,并没有出现帖子所描述的word之类的,唯一沾边的也就这个了,经过各种权限设置之后,还是不行(也可能时我设置的不对). 突然想起来服务器环境时64位,而开发环境时32位,搜索之后

用C#操作word替换字符,不用npoi,改用spire

这两天想写个小程序,是用C#操作word文档的.许多人都对微软本身的解决方案COM组件十分不看好,比如需要本机安装office等等,总之吐槽很多,直接放弃. 搜到一个国产的npoi库,据说操作简单功能强大,下载试用,发现操作excel还是不错的,但word不好使.而且官方网站文档不全,更新缓慢. 尝试文本替换,总是出错.加了官方群,问了问题,没人回应. 网上又找了找,发现有个spire的库不错,也有免费的dll可以用.(转个评价:这是一个免费又强大的C# word 组件,它不需要 Word au

C#中操作Word(1)—— word对象模型介绍

一.开发环境布置 C#中添加对Word的支持,只需添加对Microsoft.Office.Interop.Word的命名空间,如下图所示,右键点击“引用”,在弹出的“添加引用”对话框中选中COM标签页,找到“Microsoft Word 12.0 Object Library”. 点击确定按钮后,可在引用中添加显示名称为Microsoft.Office.Interop.Word的引用: 二.Word的对象模型介绍 Word中共有5种常用的对象模型:应用程序对象Application.文档对象Do

XDocReport 的简单使用 操作word 替换变量

XDocReport 主要是操作word,在word模版中定义变量并替换变量.(在word中还可替换动态图片,可进行循环.判断操作,可定义指令扩展程序,可转成pdf文件 等) 1,模版变量定义. 新建word,Ctrl + F9   编辑域   选择MergeField  编辑域代码 如图: 2,代码 /** * 根据模板导出word文件 * * @param reportData ReportData对象为数据对象,里面存储Map 数据 * @param templateName 模板文件路径

C#操作word时出现的office错误

每次运行WORD都会出现一个提示窗口--"此错误通常是由宏安全性设置造成的.如果您知道宏来自您信任的来源,则可将宏安全性设置更改为允许启用宏.宏安全性设置的更改方式取决于您使用的Microsoft Office System 程序." Word2007提示错误"此错误通常是由宏安全性设置造成"的解决方法有以下几种: 方法一: Word选项--加载项--管理[com加载项],转到--把几个勾勾都取消掉--确定,即可.Win7中注意要以管理员身份进行,因为这些写入了注册

C#操作Word文档(加密、解密、对应书签插入分页符)

原文:C#操作Word文档(加密.解密.对应书签插入分页符) 最近做一个项目,客户要求对已经生成好的RTF文件中的内容进行分页显示,由于之前对这方面没有什么了解,后来在网上也找了相关的资料,并结合自己在MSDN上面的查找,后来总算把问题给解决掉啦.下面对C#操作Word文档(加密.解密.插入分页符)做一个简单的总结,希望对一些朋友有所帮忙吧.^_^ 写代码之前,需要引用对应的DLL文件: 1.Interop.Microsoft.Office.Interop.Word.dll  (网上可以下载)

[.NET] 操作 Word 组件 - Spire.Doc 介绍

操作 Word 组件 - Spire.Doc 介绍 [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5898368.html 序 本打算过几天简单介绍下组件 Spire.XLS,突然发现园友率先发布了一篇,既然 xls 已经出现,为避免打上抄袭嫌疑,博主只能抢先一步使用 Spire.Doc 简单介绍 Doc 操作,下面是通过 WinForm 程序执行代码完成介绍的. 本机环境:Win10 x64.VS 2015.MS Office 2016. 目

[转] c# 操作Word

来自 风过四季天 的原文 c# 操作Word总结 在医疗管理系统中为保存患者的体检和治疗记录,方便以后的医生或其他人查看.当把数据保存到数据库中,需要新建很多的字段,而且操作很繁琐,于是想 到网页的信息创建到一个word文本中,在显示的时,可以在线打开word,也可以把word转换成html标签显示. 这样使用word代替网页的原因有: 第一:网页生成数学公式和特殊符号存储和显示比较麻烦(如何操作word生成数学公式,有待测试) 第二:生成Word版的报告更容易存档和没有环境下的传阅及打印 第三