C#生成复杂格式的WORD
来源:互联网 发布:店铺推广软件 编辑:程序博客网 时间:2024/05/17 22:53
要添加COM引用,Microfoft Word Object Library
要加入using Microsoft.Office.Interop.Word;
private void TTest()
{
string message = "";
try
{
Object Nothing = System.Reflection.Missing.Value;
Directory.CreateDirectory("C:/CNSI"); //创建文件所在目录
string name = "CNSI_" + DateTime.Now.ToShortDateString() + ".doc";
object filename = "C://CNSI//" + name; //文件保存路径
//创建Word文档
Application WordApp = new ApplicationClass();
Document WordDoc = WordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing);
WordApp.Selection.ParagraphFormat.LineSpacing = 23f;//设置文档的行间距
//移动焦点并换行
object count = 14;
object WdLine = WdUnits.wdLine;//换一行;
WordApp.Selection.MoveDown(ref WdLine, ref count, ref Nothing);//移动焦点
WordApp.Selection.TypeParagraph();//插入段落
WordApp.Selection.TypeParagraph();//插入段落
WordDoc.Paragraphs.First.Range.Text = "暂住人口信息表";
WordDoc.Paragraphs.First.Range.Font.Name = "黑体";
WordDoc.Paragraphs.First.Range.Bold = 2;
WordDoc.Paragraphs.First.Range.Font.Size = 20;
WordDoc.Paragraphs.First.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
//文档中创建表格
Microsoft.Office.Interop.Word.Table newTable =WordDoc.Tables.Add(WordApp.Selection.Range, 20, 7, ref Nothing, refNothing);
//设置表格样式
newTable.Borders.OutsideLineStyle = WdLineStyle.wdLineStyleSingle;
newTable.Borders.InsideLineStyle = WdLineStyle.wdLineStyleSingle;
newTable.Columns[1].Width = 40f;
newTable.Columns[2].Width = 95f;
newTable.Columns[3].Width = 60f;
newTable.Columns[4].Width = 85f;
newTable.Columns[5].Width = 60f;
newTable.Columns[6].Width = 65f;
newTable.Columns[7].Width = 50f;
//填充表格内容
newTable.Cell(1, 1).Range.Text = "基本信息";
newTable.Cell(1, 1).Range.Bold = 2;
//合并单元格
newTable.Cell(1, 1).Merge(newTable.Cell(8, 1));
WordApp.Selection.Cells.VerticalAlignment = WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;//水平居中
newTable.Cell(1, 2).Range.Text = "姓名";
newTable.Cell(1, 2).Range.Bold = 2;
newTable.Cell(1, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(1, 4).Range.Text = "性别";
newTable.Cell(1, 4).Range.Bold = 2;
newTable.Cell(1, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(1, 6).Range.Text = "照片";
newTable.Cell(1, 6).Range.Bold = 2;
newTable.Cell(1, 6).Merge(newTable.Cell(1, 7));
newTable.Cell(1, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
//2
newTable.Cell(2, 2).Range.Text = "别名";
newTable.Cell(2, 2).Range.Bold = 2;
newTable.Cell(2, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(2, 4).Range.Text = "民族";
newTable.Cell(2, 4).Range.Bold = 2;
newTable.Cell(2, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
//3
newTable.Cell(3, 2).Range.Text = "身份证号";
newTable.Cell(3, 2).Range.Bold = 2;
newTable.Cell(3, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
//4
newTable.Cell(4, 2).Range.Text = "联系方式";
newTable.Cell(4, 2).Range.Bold = 2;
newTable.Cell(4, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(2, 6).Merge(newTable.Cell(2, 7));
newTable.Cell(3, 6).Merge(newTable.Cell(3, 7));
newTable.Cell(4, 6).Merge(newTable.Cell(4, 7));
newTable.Cell(5, 6).Merge(newTable.Cell(5, 7));
newTable.Cell(2, 6).Merge(newTable.Cell(5, 6));
newTable.Cell(3, 3).Merge(newTable.Cell(3, 5));
newTable.Cell(4, 3).Merge(newTable.Cell(4, 5));
newTable.Cell(5, 2).Range.Text = "出生日期";
newTable.Cell(5, 2).Range.Bold = 2;
newTable.Cell(5, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(5, 4).Range.Text = "来本地时间";
newTable.Cell(5, 4).Range.Bold = 2;
newTable.Cell(5, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(6, 2).Range.Text = "常住户口地址";
newTable.Cell(6, 2).Range.Bold = 2;
newTable.Cell(6, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(7, 2).Range.Text = "暂住地址";
newTable.Cell(7, 2).Range.Bold = 2;
newTable.Cell(7, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(8, 2).Range.Text = "现服务处所";
newTable.Cell(8, 2).Range.Bold = 2;
newTable.Cell(8, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(6, 3).Merge(newTable.Cell(6, 7));
newTable.Cell(7, 3).Merge(newTable.Cell(7, 7));
newTable.Cell(8, 3).Merge(newTable.Cell(8, 7));
newTable.Cell(9, 1).Range.Text = "公安局信息";
newTable.Cell(9, 1).Range.Bold = 2;
newTable.Cell(9, 1).Merge(newTable.Cell(14, 1));
newTable.Cell(9, 1).Select();
WordApp.Selection.Cells.VerticalAlignment = WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;//水平居中
newTable.Cell(9, 2).Range.Text = "身高";
newTable.Cell(9, 2).Range.Bold = 2;
newTable.Cell(9, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(9, 4).Range.Text = "文化程序";
newTable.Cell(9, 4).Range.Bold = 2;
newTable.Cell(9, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(9, 6).Range.Text = "政治面貌";
newTable.Cell(9, 6).Range.Bold = 2;
newTable.Cell(9, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(10, 2).Range.Text = "婚姻状态";
newTable.Cell(10, 2).Range.Bold = 2;
newTable.Cell(10, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(10, 4).Range.Text = "职业";
newTable.Cell(10, 4).Range.Bold = 2;
newTable.Cell(10, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(10, 6).Range.Text = "现从事职业";
newTable.Cell(10, 6).Range.Bold = 2;
newTable.Cell(10, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(12, 2).Range.Text = "服务处所负责人";
newTable.Cell(12, 2).Range.Bold = 2;
newTable.Cell(12, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(12, 4).Range.Text = "暂住证签发日期";
newTable.Cell(12, 4).Range.Bold = 2;
newTable.Cell(12, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(12, 6).Range.Text = "有效期";
newTable.Cell(12, 6).Range.Bold = 2;
newTable.Cell(12, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(11, 2).Range.Text = "暂住事由";
newTable.Cell(11, 2).Range.Bold = 2;
newTable.Cell(11, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(11, 3).Merge(newTable.Cell(11, 7));
newTable.Cell(13, 2).Range.Text = "注解原因";
newTable.Cell(13, 2).Range.Bold = 2;
newTable.Cell(13, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(14, 2).Range.Text = "函调情况";
newTable.Cell(14, 2).Range.Bold = 2;
newTable.Cell(14, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(13, 6).Range.Text = "注销日期";
newTable.Cell(13, 6).Range.Bold = 2;
newTable.Cell(13, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(14, 6).Range.Text = "连接标识";
newTable.Cell(14, 6).Range.Bold = 2;
newTable.Cell(14, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(13, 3).Merge(newTable.Cell(13, 5));
newTable.Cell(14, 3).Merge(newTable.Cell(14, 5));
newTable.Cell(15, 1).Range.Text = "携带15周岁及以下人口";
newTable.Cell(15, 1).Range.Bold = 2;
newTable.Cell(15, 1).Merge(newTable.Cell(19, 1));
newTable.Cell(15, 1).Select();
WordApp.Selection.Cells.VerticalAlignment = WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;//水平居中
newTable.Cell(15, 2).Range.Text = "关系";
newTable.Cell(15, 2).Range.Bold = 2;
newTable.Cell(15, 2).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(15, 3).Range.Text = "姓名";
newTable.Cell(15, 3).Range.Bold = 2;
newTable.Cell(15, 3).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(15, 4).Range.Text = "性别";
newTable.Cell(15, 4).Range.Bold = 2;
newTable.Cell(15, 4).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(15, 5).Range.Text = "出生日期";
newTable.Cell(15, 5).Range.Bold = 2;
newTable.Cell(15, 5).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(15, 6).Range.Text = "出生日期";
newTable.Cell(15, 6).Range.Bold = 2;
newTable.Cell(15, 6).Select();
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
newTable.Cell(20, 1).Range.Text = "备注";
newTable.Cell(20, 1).Range.Bold = 2;
newTable.Cell(20, 1).Select();
object bzhight = 80;
newTable.Cell(20, 1).SetHeight(ref bzhight, WdRowHeightRule.wdRowHeightAtLeast);
WordApp.Selection.Cells.VerticalAlignment = WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
WordApp.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;//水平居中
newTable.Cell(20, 2).Merge(newTable.Cell(20, 7));
//文件保存
WordDoc.SaveAs(ref filename, ref Nothing, ref Nothing, refNothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, refNothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, refNothing, ref Nothing, ref Nothing);
WordDoc.Close(ref Nothing, ref Nothing, ref Nothing);
WordApp.Quit(ref Nothing, ref Nothing, ref Nothing);
message = name + "文档生成成功,以保存到C:CNSI下";
}
catch
{
message = "文件导出异常!";
}
- C#生成复杂格式的WORD
- Java html转word,用freemark生成复杂word格式
- c#生成的word文档
- c#生成的word文档
- c#生成的word文档
- Java动态生成复杂word
- Java 动态生成复杂 Word
- freemarker自动生成复杂word
- Java 动态生成复杂 Word
- Java生成复杂Word文档的完美解决方案
- 如何让java生成复杂的Word文档
- Java生成复杂Word文档的完美解决方案
- java生成复杂word文档的完美解决方案
- java生成复杂word文档的完美解决方案
- java生成复杂word文档的完美解决方案
- java生成复杂word文档的完美解决方案
- java生成复杂word文档的完美解决方案
- java生成复杂word文档的完美解决方案
- 6410平台500W摄像头调试过程 && 拍照偏绿和图片保存等BUG
- 委托异步调用
- 笔记
- 各种交换机的配置
- 自定义集合 -- 能够安全管理任何类型
- C#生成复杂格式的WORD
- 无法打开网站web服务器上似乎未安装frontpage服务器扩展
- DbUnit 简介和使用 (puts your database into a known state)
- JavaSE 模拟银行ATM取款机功能
- JQuery UI之(六)进度条——Progressbar
- Resources cannot be null. 缺少ActionForm的异常
- 【验证您是服务器上"Debugger users"组的成员】的解决方案
- 飘
- VC 编程ANSI环境下读写Unicode文件和将CStdioFile类扩展,读取UNICODE文本文件