C#后端代码处理excel,按条件给单元格设置格式

2023-11-17

有时候在一些自定义场景下我们需要给excel表格打上标签格式,比如说财务想给每个月花费最高和最低员工打上标记,在输出表格时内容就已经处理完毕。

准备工作

首先,下载Spire.xls功能类库 ,点击这里下载 ;

然后,在后端代码引入命名空间。

using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.ConditionalFormatting;
using Spire.Xls.Core.Spreadsheet.Collections;
using Spire.Xls.Core;

按条件设置单元格样式

            Workbook workbook = new Workbook();            
            workbook.LoadFromFile(@"..\..\..\..\..\..\Data\ConditionalFormatting.xlsx");

             //按索引指定sheet表
            Worksheet sheet = workbook.Worksheets[0];

            sheet.AllocatedRange.RowHeight = 15;
            sheet.AllocatedRange.ColumnWidth = 16;

            //创建条件格式样式
            XlsConditionalFormats xcfs1 = sheet.ConditionalFormats.Add();
            xcfs1.AddRange(sheet.Range["A1:D1"]);
            IConditionalFormat cf1 = xcfs1.AddCondition();
            cf1.FormatType = ConditionalFormatType.CellValue;
            cf1.FirstFormula = "150";
            cf1.Operator = ComparisonOperatorType.Greater;
            cf1.FontColor = Color.Red;
            cf1.BackColor = Color.LightBlue;

            XlsConditionalFormats xcfs2 = sheet.ConditionalFormats.Add();
            xcfs2.AddRange(sheet.Range["A2:D2"]);
            IConditionalFormat cf2 = xcfs2.AddCondition();
            cf2.FormatType = ConditionalFormatType.CellValue;
            cf2.FirstFormula = "300";
            cf2.Operator = ComparisonOperatorType.Less;
            //设置边框
            cf2.LeftBorderColor = Color.Pink;
            cf2.RightBorderColor = Color.Pink;
            cf2.TopBorderColor = Color.DeepSkyBlue;
            cf2.BottomBorderColor = Color.DeepSkyBlue;
            cf2.LeftBorderStyle = LineStyleType.Medium;
            cf2.RightBorderStyle = LineStyleType.Thick;
            cf2.TopBorderStyle = LineStyleType.Double;
            cf2.BottomBorderStyle = LineStyleType.Double;

            //添加数据条
            XlsConditionalFormats xcfs3 = sheet.ConditionalFormats.Add();
            xcfs3.AddRange(sheet.Range["A3:D3"]);
            IConditionalFormat cf3 = xcfs3.AddCondition();
            cf3.FormatType = ConditionalFormatType.DataBar;
            cf3.DataBar.BarColor = Color.CadetBlue;

            //添加icon
            XlsConditionalFormats xcfs4 = sheet.ConditionalFormats.Add();
            xcfs4.AddRange(sheet.Range["A4:D4"]);
            IConditionalFormat cf4 = xcfs4.AddCondition();
            cf4.FormatType = ConditionalFormatType.IconSet;
            cf4.IconSet.IconSetType = IconSetType.ThreeTrafficLights1;

            //添加颜色
            XlsConditionalFormats xcfs5 = sheet.ConditionalFormats.Add();
            xcfs5.AddRange(sheet.Range["A5:D5"]);
            IConditionalFormat cf5 = xcfs5.AddCondition();
            cf5.FormatType = ConditionalFormatType.ColorScale;
            
            //在 "A7:D7 "范围内用BurlyWood颜色突出重复的数值
            XlsConditionalFormats xcfs6 = sheet.ConditionalFormats.Add();
            xcfs6.AddRange(sheet.Range["A6:D6"]);
            IConditionalFormat cf6 = xcfs6.AddCondition();
            cf6.FormatType = ConditionalFormatType.DuplicateValues;
            cf6.BackColor = Color.BurlyWood;

            //保存
            workbook.SaveToFile("Output.xlsx", ExcelVersion.Version2010);

以上内容设置,我们可以在应用程序中为数据贴标签后输出,效率会比输出后人工打标签更为快捷。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#后端代码处理excel,按条件给单元格设置格式 的相关文章

随机推荐

  • 【计算机视觉

    文章目录 一 问题 二 个人的理解 2 1 线性层的理解 2 2 pseudo words的理解 2 2 1 详细一点 2 2 2 为什么可以使用文本嵌入空间中的技术 2 2 3 pseudo word的本质是什么 2 2 4 好处 2 2
  • 时间序列分析波动性预测GARCH模型

    GARCH Generalized Autoregressive Conditional Heteroskedasticity 模型是一种常用于预测金融时间序列波动性的统计模型 它是ARCH Autoregressive Condition
  • Axios 发送 json 数据

  • [1008]ROW_NUMBER和RANK和DENSE_RANK的区别

    文章目录 row number over partition by order by 使用说明书 ROW NUMBER和RANK和DENSE RANK的区别 row number over partition by order by 使用说
  • 【SpringBoot 3.x】使用starter整合Druid

    Druid介绍 Druid是阿里巴巴的一个开源项目 号称为监控而生的数据库连接池 在功能 性能 扩展性方面都超过其他例如DBCP C3P0 BoneCP Proxool JBoss DataSource等连接池 而且Druid已经在阿里巴巴
  • echarts自定义主题构建

    ecahrts自定义主体构建 首先 需要ui在echarts官网的工具 gt 主体构建工具 中配置参数 然后导出json 或者直接下载js文件 主体名称最好给个英文名称 如果UI给的是中文 修改一下 1 打开下载的js 2 搜索 echar
  • 100天精通Python(数据分析篇)——第64天:Pandas分组groupby函数案例

    文章目录 一 分组 groupby 1 GroupBy对象 DataFrameGroupBy SeriesGroupBy 1 分组操作 2 分组运算 3 按自定义的key分组 2 GroupBy对象支持迭代操作 1 单层分组 2 多层分组
  • 数据集【NO.7】无人机航拍数据集——VisDrone2019数据集

    写在前面 数据集对应应用场景 不同的应用场景有不同的检测难点以及对应改进方法 本系列整理汇总领域内的数据集 方便大家下载数据集 若无法下载可关注后私信领取 关注免费领取整理好的数据集资料 本文数据集链接 https pan baidu co
  • 10个值得珍藏的4K高清壁纸网站推荐

    作为打开电脑 or 手机第一眼就看到的桌面 给它设置一个赏心悦目的桌面壁纸还是必不可少的 下面分享了 10 个值得珍藏的高清桌面壁纸网站 支持各种图片比例和分辨率 从 720P 到 4K 8K 应有尽有 电脑和手机都可以使用 高清桌面壁纸网
  • 20. 有效的括号

    思路 这道题刚看到的时候想着放入数组然后首末都使用指针在指向进行匹对 发现不太好用 想起表达式计算时是通过入栈进行计算从而进行括号匹对 所以思路还是使用栈 但是Java还不是学得很深 不知道怎么用栈 故通过数组来模拟栈 将字符串放入字符数组
  • Linux 设置定时任务

    作者 Linux猿 简介 CSDN博客专家 华为云享专家 Linux C C 云计算 物联网 面试 刷题 算法尽管咨询我 关注我 有问题私聊 欢迎小伙伴们点赞 收藏 留言 本篇文章主要介绍在 Linux 环境下如何设置定时任务 一 实验环境
  • (ESP32学习11)串口的使用(发送和接收)

    首先串口这种很重要的东西应该早点讲的 但是串口发送简单 读取起来是要废一番脑筋的 所以下面有两个部分 第一部分只有ESP32的几个串口使能和发送的讲解 第二部分就包含串口接收 我们将要把读取的数据再由我们的调试串口打印出来 下一篇我还会更一
  • ant-design-pro 项目运行报错解决

    第一步 安装git 第二步 安装图片输入命令 在运行到npm insatll 这一步的时候一直报错 详情就不写了 试了淘宝镜像一样报错 最后用yarn命令 会报错淘宝镜像运行结尾有报错 所以卸载了淘宝镜像 npm uninstall cnp
  • centos7调整vm.max_map_count的大小及修改系统打开文件大小

    参考博主 centos7调整vm max map count的大小及修改系统打开文件大小
  • JavaScript最后分水岭——正则表达式

    个人简介 个人主页 微风洋洋 博客领域 编程基础 后端 写作风格 干货 干货 还是tmd的干货 精选专栏 JavaScript 支持洋锅 点赞 收藏 留言 好久不见 甚是想念 大家好 我是微风洋洋 也可以叫我洋锅 细心地小伙伴可能已经发现
  • 线性代数-方阵对角化及其应用

    前置知识 1 向量的内积 对于 a x 1
  • Springboot 集成 RabbitMq 实现消息确认机制

    消息确认主要分为两种 发送确认 发送确认包含两种情况 一种是消息是否到达交换机 一种是消息是否到达队列 接收确认 一 发送方消息确认 1 ConfirmCallback 接口 配置文件需要开启配置 publisher confirm typ
  • Linux系统中如何彻底隐藏一个TCP连接?

    前面的文章中 我稍微描述了一下如何隐藏一个TCP连接 https blog csdn net dog250 article details 105372214 在上文中 我采用了 传统 的做法 即hook住proc的 proc net tc
  • [Kubernetes]谈谈容器跨主机网络

    继上篇文章 Kubernetes 浅谈容器网络 自己给自己挖的坑 这篇文章来谈谈容器跨主机网络 要理解容器 跨主通信 的原理 就要来谈谈 Flannel 这个项目 Flannel 项目是 CoreOS 公司主推的容器网络方案 提供容器网络功
  • C#后端代码处理excel,按条件给单元格设置格式

    有时候在一些自定义场景下我们需要给excel表格打上标签格式 比如说财务想给每个月花费最高和最低员工打上标记 在输出表格时内容就已经处理完毕 准备工作 首先 下载Spire xls功能类库 点击这里下载 然后 在后端代码引入命名空间 usi