C# 操作excel

//导出Excel
        private void ExportExcel(string fileName, System.Data.DataTable myDGV, string title)
        {
            string saveFileName = "";
            System.Windows.Forms.SaveFileDialog saveDialog = new System.Windows.Forms.SaveFileDialog();
            saveDialog.DefaultExt = "xlsx";
            saveDialog.Filter = "Excel文件|*.xlsx";
            saveDialog.FileName = fileName;
            saveDialog.ShowDialog();
            saveFileName = saveDialog.FileName;
            if (saveFileName.IndexOf(":") < 0) return; //被点了取消
            Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
            if (xlApp == null)
            {
                System.Windows.MessageBox.Show("无法创建Excel对象,可能您的电脑未安装Excel");
                return;
            }
            Microsoft.Office.Interop.Excel.Workbooks workbooks = xlApp.Workbooks;
            Microsoft.Office.Interop.Excel.Workbook workbook = workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);
            Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//取得sheet1

//操作单元格
            Range rangeLecture = worksheet.Range[worksheet.Cells[1, 1], worksheet.Cells[1, myDGV.Columns.Count]];
            rangeLecture.Application.DisplayAlerts = false;
            rangeLecture.Merge(Missing.Value);
            rangeLecture.Application.DisplayAlerts = true;
            worksheet.Cells[1, 1] = title;

//写入标题
            for (int i = 0; i < myDGV.Columns.Count; i++)
            {
                worksheet.Cells[2, i + 1] = myDGV.Columns[i].ColumnName;
            }
            //写入数值
            for (int r = 0; r < myDGV.Rows.Count; r++)
            {
                for (int i = 0; i < myDGV.Columns.Count; i++)
                {
                    worksheet.Cells[r + 3, i + 1] = myDGV.Rows[r][i].ToString();
                }
                System.Windows.Forms.Application.DoEvents();
            }
            worksheet.Columns.EntireColumn.AutoFit();//列宽自适应
            if (saveFileName != "")
            {
                try
                {
                    workbook.Saved = true;
                    workbook.SaveCopyAs(saveFileName);
                }
                catch (Exception ex)
                {
                    System.Windows.MessageBox.Show("导出文件时出错,文件可能正被打开!\n" + ex.Message);
                }
            }
            xlApp.Quit();
            GC.Collect();//强行销毁
            //System.Windows.Forms.MessageBox.Show("文件保存成功", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }

操作单元格样式

worksheet.Cells[1, 1].Value2 = strTitle; //设置单元格内文本

worksheet.Cells[1, 1].Font.Name = "宋体";//设置字体

worksheet.Cells[1, 1].Font.Size = 18;//字体大小

worksheet.Cells[1, 1].Font.Bold = true;//加粗显示

worksheet.Cells[1, 1].HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;//水平居中

worksheet.Cells[1, 1].VerticalAlignment = Excel.XlVAlign.xlVAlignCenter;//垂直居中

worksheet.Cells[1, 1].Borders.LineStyle = Excel.XlLineStyle.xlContinuous;//设置边框

worksheet.Cells[1, 1].Borders.Weight = Excel.XlBorderWeight.xlMedium;//边框常规粗细

转载于:https://www.cnblogs.com/chendongbky/p/6210712.html

C# excel 单元格居中相关推荐

  1. vba设置Excel单元格左对齐、右对齐、居中对齐、字体、字号、字型

    设置Excel中的一个或多个单元格甚至是一个区域的或者是被选中单元格的左对齐.友对齐.居中对齐.字体.字号.字型等属性. ①左对齐.右对齐.居中对齐 '选择区域或单元格右对齐 Selection.Ho ...

  2. java操作导出Excel(jxl导出WritableWorkbook)jxl合并单元格,单元格的设置,单元格居中、字体、大小、换行、合并行,列宽、自动换行撑起高度、指定特定字符串样式等

    new WritableCellFormat().setWrap(true);//通过调整宽度和高度自动换行 1.1     需求描述 MS的电子表格(Excel)是Office的重要成员,是保存统计 ...

  3. 总结Python设置Excel单元格样式的一切,比官方文档还详细。

    Python对Excel表格处理非常方便,本文专门对Excel单元格样式设置进行总结,日常用到的设置基本都可以用openpyxl库完成. 创建一个表格 openpyxl是第三方库,如果你还没有安装,输 ...

  4. java excel单元格背景色,『excel表格尺寸设置』Java如何设置被导出excel单元格的样式?比如背景色,大小什么的?...

    Java如何设置被导出excel单元格的样式?比如背景色,大小什么的? 使 poi ,具体实现 HSSFCellStyle style = null; // 创建表头style HSSFCellSty ...

  5. POI实现EXCEL单元格合并及边框样式

    POI实现EXCEL单元格合并及边框样式 下面例子为创建产生一个excel,合并单元格,然后为合并后的单元格添加边框 package test;import java.io.FileOutputStr ...

  6. 总结Python设置Excel单元格样式的一切,比官方文档还详细

    总结Python设置Excel单元格样式的一切,比官方文档还详细 Python对Excel表格处理非常方便,本文专门对Excel单元格样式设置进行总结,日常用到的设置基本都可以用openpyxl库完成 ...

  7. java 向word中添加excel附件并向excel单元格中加入图片并压缩图片并根据图片动态控制单元格高度宽度

    word中加入excel附件 excel单元格中插入图片 word freemarker Excel poi 制作, jxl 插入图片 压缩图片/宽高,动态控制单元格高度与宽度 1.word 需要模板 ...

  8. 如何通过VB合并Excel单元格以及设置Excel行高?VB创建Excel表格,合并单元格,生成图形等操作

    如何通过VB合并Excel单元格以及设置Excel行高? 例如:我想把第一列的第4,5,6,7行合并...我在怎样让合并单元格里的字居中,怎样改变字体. 请不吝赐教... ============== ...

  9. Microsoft Excel 教程:如何在 Excel 单元格中设置文本格式?

    欢迎观看 Microsoft Excel 教程,小编带大家学习 Microsoft Excel 的使用技巧,了解如何在 Excel 单元格中设置文本格式. 设置文本或数字的格式可以使文本或数字更明显, ...

最新文章

  1. IEEE 发布年终总结,AI 奇迹不再是故事
  2. 必读 | 在转行AI之前,先了解下2018年人工智能发展的八大趋势
  3. 如何获取数据库中标的所有字段和数据类型?
  4. BERT模型超酷炫,上手又太难?请查收这份BERT快速入门指南!
  5. A potentially dangerous Request.Form value was detected from the client
  6. 持续20年,一场威胁Linux存亡的诉讼终结束
  7. layui 如何去dom_javascript 怎么去引用layui里面的方法
  8. 前端学习(2144):webpack中使用css的配置
  9. 【计算机视觉】OpenCV篇(3) - 图像几何变换(仿射变换/透视变换)
  10. WebLogic 12c与Oracle Database 12c的集成
  11. 【Flink】Flink Container exited with a non-zero exit code 143
  12. ++i 和 i++ 性能上的区别
  13. 【优化算法】麻雀搜索优化算法(SSA)【含Matlab源码 1288期】
  14. ubuntu java 中文_java部署ubuntu后中文显示问号问题
  15. jszip批量下载压缩
  16. Android混淆配置(含androidx、kotlin)
  17. CSS3 页面布局
  18. 大脑中的CD19表达与CAR-T治疗关系
  19. 东南大学计算机程光,东南大学计算机科学与工程学院硕导介绍:程光
  20. 竞品分析----夸克:我离百度还有多少步?

热门文章

  1. java 用户登录模块_Java SSH框架系列:用户登录模块的设计与实现思路
  2. 小米(MI) CXB6-1QM 米家插线板 6位基础版拆解暴力维修
  3. java 二进制 表示负数_正数负数的二进制表示
  4. android firewall apk,DroFireWall
  5. 基于Chrome浏览器插件实现SAE自动登录
  6. 【答学员问】今年21岁,刚开始工作,有什么需要注意的吗?
  7. 视频软件Vegas的项目工程文件打不开怎么办?
  8. 2020-09-14
  9. B. Orac and Models
  10. 华为视频会议BOX300