当前位置: 首页 > news >正文

C# 操作EXCEL样式 示例 --生成EXCEL审计表

  
 #region 生成审计表
        public static void GenerateAccountGrid(string fileName, string tableName, string companyName, string owner, DateTime endline, string copyMan, AnalysisEnt ent)
        {
            try
            {
                DataTable dt = new DataTable();
                dt.Columns.Add(tableName);
                dt.Columns.Add("");
                dt.Columns.Add("");
                dt.Columns.Add("");
                dt.Columns.Add("");
                dt.Columns.Add("");
                //AddNewRow(ref dt, 6, "", "", "", tableName, "", "");
                AddNewRow(ref dt, 6, "被审计单位名称:", companyName, "编制人:" + owner, "", "日期: " + DateTime.Now.ToShortDateString(), "");
                AddNewRow(ref dt,  6, "会计期间或截止日期:" + endline, "", "复制人:" + copyMan, "", "索引号:" + "YIZK-" + DateTime.Now.Millisecond.ToString());
                AddNewRow(ref dt, 6, " ", " ", " ", " ", "页次: 1", "");
                AddNewRow(ref dt, 6, "项目名称", "期末未审计数", "摘要", "账项调整", "重分类调整", "期末审定数");
                AddNewRow(ref dt, 6, ent.ProName, ent.UnFinishNum, ent.FinishNum, ent.Summary, "0", "0", ent.FinishNum);
                AddNewRow(ref dt, 6, "审计结论:", " ", " ", " ", " ", " ");
                ExcelHelper.ExportToExcel(dt, fileName, tableName);


                if (File.Exists(fileName))
                {


                    Microsoft.Office.Interop.Excel.Application xlsApp = new Microsoft.Office.Interop.Excel.Application();
                    Microsoft.Office.Interop.Excel.Workbook workbook = xlsApp.Workbooks.Open(fileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
                    Microsoft.Office.Interop.Excel.Worksheet mySheet = workbook.Sheets[tableName] as Microsoft.Office.Interop.Excel.Worksheet;


                    xlsApp.Visible = true;


                    标题样式
                    ((Microsoft.Office.Interop.Excel.Range)mySheet.Columns["A:F", System.Type.Missing]).ColumnWidth = 20;
                    Microsoft.Office.Interop.Excel.Range titleRange = mySheet.get_Range("A1", "F1");
                    titleRange.ClearContents();
                    titleRange.Merge(0);
                    titleRange = mySheet.get_Range("A1", "A1");
                    titleRange.Cells[1, 1] = tableName;
                    titleRange.Font.Size = 30;
                    titleRange.HorizontalAlignment = Microsoft.Office.Interop.Excel.XlHAlign.xlHAlignCenter;
                    titleRange.Borders.get_Item(Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeBottom).Weight = Microsoft.Office.Interop.Excel.XlBorderWeight.xlMedium;


                    为所有单元格添加边框
                    Microsoft.Office.Interop.Excel.Range allRange = mySheet.get_Range("A1", "F7");
                    allRange.Borders.LineStyle = 1;
                    allRange.Borders.get_Item(Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeTop).LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;


                    最后一行单元格合并
                    Microsoft.Office.Interop.Excel.Range contentRange = mySheet.get_Range("A7", "F7");
                    contentRange.ClearContents();
                    contentRange.Merge(0);
                    contentRange = mySheet.get_Range("A7", "F7");
                    contentRange[1, 1] = "审计结论:";
                    contentRange.RowHeight = 30;
                    contentRange.VerticalAlignment = Microsoft.Office.Interop.Excel.XlVAlign.xlVAlignTop;
                }


            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }




        public static void AddNewRow(ref DataTable dt, int columnCount, params string[] cells)
        {
            if (cells == null || cells.Length > columnCount)
            {
                return;
            }
            DataRow dr = dt.NewRow();
            for (int i = 0; i < cells.Length; i++)
            {
                dr[i] = cells[i];
            }
            dt.Rows.Add(dr);
        }
        #endregion

相关文章:

  • C# 操作EXCEL
  • 新浪评出2008年度IT博客
  • c# 隐藏已打开的窗口,打开登陆窗口
  • 十个常用的S60手机软件
  • VB 操作ACCESS 实例 练习题--ATM取款机 代码段
  • 十大经典Java手机游戏 Top Ten Best Java Mobile Games
  • chrome下使用jquery中的load函数无效问题
  • C# 操作配置文件 App.config
  • iPhone入华情变 谁动了中移动的苹果?
  • C# 托盘程序
  • C# 托盘程序 实例 双击显示窗体,最小化到托盘
  • Myeclipse6.0的破解方法
  • 免费的网页原型制作工具
  • c#获取机器码
  • 稻 香
  • .pyc 想到的一些问题
  • 【译】理解JavaScript:new 关键字
  • 30天自制操作系统-2
  • Git同步原始仓库到Fork仓库中
  • hadoop集群管理系统搭建规划说明
  • Node + FFmpeg 实现Canvas动画导出视频
  • Redis中的lru算法实现
  • 计算机在识别图像时“看到”了什么?
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 我的zsh配置, 2019最新方案
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • #### go map 底层结构 ####
  • #162 (Div. 2)
  • #define,static,const,三种常量的区别
  • (二)PySpark3:SparkSQL编程
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (接口自动化)Python3操作MySQL数据库
  • (十)T检验-第一部分
  • (转)Linq学习笔记
  • (转)平衡树
  • ./configure,make,make install的作用
  • .bat批处理(四):路径相关%cd%和%~dp0的区别
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .NET Core跨平台微服务学习资源
  • .NET 跨平台图形库 SkiaSharp 基础应用
  • .net 无限分类
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .net经典笔试题
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理
  • .NET是什么
  • .NET文档生成工具ADB使用图文教程
  • @RequestParam,@RequestBody和@PathVariable 区别
  • @Validated和@Valid校验参数区别
  • [04]Web前端进阶—JS伪数组
  • [100天算法】-每个元音包含偶数次的最长子字符串(day 53)
  • [20170728]oracle保留字.txt
  • [Android]使用Retrofit进行网络请求
  • [Angular] 笔记 8:list/detail 页面以及@Input