Range range1 = (Range)workSheet.Cells[2, 2];//选择操作块 range1.NumberFormatLocal = "@"; //设置格式为文本 range1.Cells.ColumnWidth = 11; //单元格列高 range1.Rows.ColumnWidth = 15;//单元格行宽 workSheet.Cells[ 3, 1] = "成绩总结"; //写入数据 ((Excel.Range)workSheet.Rows[ 3, Type.Missing]).PageBreak = (int)Excel.XlPageBreak.xlPageBreakManual;//设置分页线 workSheet.PageSetup.PrintArea="A1:O12,C12:B12";//设置打印区域 workBook.RefreshAll();//更新所有工作表 workBook.SaveAs("C:\\Users\\Administrator\\Desktop\\test.xls", miss, miss, miss, miss, miss, XlSaveAsAccessMode.xlNoChange, miss, miss, miss, miss, miss); //保存WorkBook workBook = null;//消除对象 excelApp.Quit(); //这一句是非常重要的,否则Excel对象不能从内存中退出 excelApp = null; GC.Collect();//强制对所有代进行垃圾回收。 根据给定的信息,我们可以归纳出以下关键知识点,这些知识点主要涉及使用C#语言与Microsoft Excel交互,实现诸如格式控制、单元格操作等自动化任务。 ### 1. Excel 对象模型 在C#中操作Excel文档时,需要了解Excel的对象模型。主要包括以下几个核心对象: - **Application**: 表示Excel应用程序本身。 - **Workbook**: 表示一个Excel工作簿。 - **Worksheet**: 表示一个Excel工作表。 - **Range**: 表示Excel中的一个或多个单元格范围。 #### 示例代码解析 ```csharp object miss = Missing.Value; // 缺省值 Excel.Application excel = new Excel.Application(); // 创建Excel实例 excel.Visible = true; // 显示Excel窗口 ``` 以上代码创建了一个Excel Application对象,并设置了其可见性为真,即在执行过程中会打开一个Excel窗口。 ```csharp Excel.Workbook workbook = excel.Workbooks.Add(true); // 添加一个新的工作簿 Excel.Worksheet workSheet = (Excel.Worksheet)workbook.Worksheets.get_Item(1); // 获取第一个工作表 workSheet.Name = "学生信息"; // 设置工作表名称 ``` 这里创建了一个新的工作簿,并获取了其中的第一个工作表。 ### 2. 工作表的基本操作 #### 设置工作表属性 ```csharp workSheet.Columns.ColumnWidth = 20; // 设置所有列的宽度 workSheet.Rows.RowHeight = 20; // 设置所有行的高度 ``` 通过`Columns`和`Rows`属性可以分别设置列宽和行高。 #### 设置打印选项 ```csharp workSheet.PageSetup.PaperSize = Excel.XlPaperSize.xlPaperA4; // 设置纸张大小 workSheet.PageSetup.PrintTitleRows = "$1:$3"; // 设置打印标题行 workSheet.PageSetup.Orientation = Excel.XlPageOrientation.xlLandscape; // 设置页面方向为横向 ``` 可以设置纸张大小、打印标题行以及页面方向等打印相关属性。 #### 设置页边距 ```csharp workSheet.PageSetup.TopMargin = excel.CentimetersToPoints(2); // 设置上边距 workSheet.PageSetup.BottomMargin = excel.CentimetersToPoints(2); // 设置下边距 workSheet.PageSetup.LeftMargin = excel.CentimetersToPoints(1.5); // 设置左边距 workSheet.PageSetup.RightMargin = excel.CentimetersToPoints(1.5); // 设置右边距 ``` 可以使用`CentimetersToPoints`方法将厘米转换为点(point),并设置各个方向的页边距。 #### 设置页面居中 ```csharp workSheet.PageSetup.CenterHorizontally = true; // 水平居中 workSheet.PageSetup.CenterVertically = false; // 不垂直居中 ``` 可以通过这两个属性设置页面是否水平或垂直居中。 #### 设置页眉页脚 ```csharp workSheet.PageSetup.HeaderMargin = excel.CentimetersToPoints(1.2); // 设置页眉距离 workSheet.PageSetup.FooterMargin = excel.CentimetersToPoints(1); // 设置页脚距离 workSheet.PageSetup.CenterFooter = "&P页&N页"; // 设置页脚内容 ``` 可以设置页眉和页脚的距离,并设置页脚中的内容。 ### 3. 单元格范围的操作 #### 选择单元格范围 ```csharp Range range1 = (Range)workSheet.Cells[2, 2]; // 选择单元格 range1.NumberFormatLocal = "@"; // 设置格式为文本 range1.Cells.ColumnWidth = 11; // 设置单元格列宽 range1.Rows.RowHeight = 15; // 设置单元格行高 ``` 可以使用`Cells`属性来选择特定的单元格,并对其进行格式设置。 #### 写入数据 ```csharp workSheet.Cells[3, 1] = "成绩总结"; // 写入数据 ``` 可以直接向指定位置的单元格写入数据。 #### 设置分页线 ```csharp ((Excel.Range)workSheet.Rows[3, System.Type.Missing]).PageBreak = (int)Excel.XlPageBreak.xlPageBreakManual; // 设置分页线 ``` 可以在指定行设置手动分页符。 #### 设置打印区域 ```csharp workSheet.PageSetup.PrintArea = "A1:O12,C12:B12"; // 设置打印区域 ``` 可以设置打印时的有效区域。 ### 4. 工作簿的保存与关闭 #### 保存工作簿 ```csharp workBook.SaveAs("C:\\Users\\Administrator\\Desktop\\test.xls", miss, miss, miss, miss, miss, Excel.XlSaveAsAccessMode.xlNoChange, miss, miss, miss, miss, miss); // 保存工作簿 ``` 可以使用`SaveAs`方法保存工作簿到指定路径。 #### 关闭并释放资源 ```csharp workBook.Close(false, miss, miss); // 关闭工作簿 workBook = null; // 释放工作簿对象 excel.Quit(); // 关闭Excel应用程序 excel = null; // 释放Excel应用程序对象 GC.Collect(); // 强制进行垃圾回收 ``` 关闭工作簿后需要释放相关对象,并调用`Quit`方法关闭Excel程序,最后强制进行垃圾回收以确保所有资源被正确释放。 通过上述知识点,我们可以使用C#语言实现对Excel文档的自动化操作,包括但不限于设置单元格格式、插入数据、设置打印选项等。这对于处理大量Excel文档的数据管理、分析和报告生成等方面非常有用。

























- 上海程序员32020-04-21假的,没有格式样例
- fairyyingying2013-09-30内容很丰富,不过没有我想要的效果设置,但是还是谢谢分享~

- 粉丝: 88
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 综合布线教程第4章.pptx
- 国家开放大学电大本科《儿童发展问题的咨询与辅导》网络课形考作业题库及答案.docx
- 聚焦核心素养--协助深度学习2022.5.13公开课.pptx
- 综合项目管理人员安全关键技术交底.doc
- 网络逻辑结构物理拓扑图例公开课一等奖优质课大赛微课获奖课件.pptx
- 在全市文化和旅游系统安全生产培训会议上的讲话.doc
- 微信小程序示例教程完整版详解
- 项目管理月报.docx
- 江苏科技大学操作系统实验.pdf
- 小学语文网络课程资源开发方案.doc
- 猫扑:树立网络营销新维度.pptx
- 数据库技术及应用实验指导书.doc
- 双电伺服数控转塔冲床控制系统软件.doc
- 音视频智能系统集成工程资质管理规定.doc
- 自动化仪表施工组织设计.pdf
- 投资估算法可行性研究报告.pptx


