C# 应用Excel条件格式(一)
Excel中的条件格式功能是个十分强大且方便的功能,通过对使用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种格式,如此一来,也在大大提高了表格的可操作性。下面将介绍在C#编程中如何来设置并应用Excel条件格式。
示例要点概述:
1. 基于单元格值应用条件格式
2. 基于自定义公式应用条件格式
3. 应用数据条条件类型格式
4. 删除条件格式
4.1 删除指定数据范围中的条件格式
4.2 删除全部条件格式
使用工具
- Free Spire.XLS for .NET 8.3(免费版)
- Visual Studio
示例代码(供参考)
测试文档如下:

【示例 1 】应用条件格式
using Spire.Xls;
using System.Drawing; namespace ConditionalFormatting_XLS
{
class Program
{
static void Main(string[] args)
{
//实例化workbook对象并加载文档
Workbook wb = new Workbook();
wb.LoadFromFile("sample.xlsx"); //获取第一个工作表
Worksheet sheet = wb.Worksheets[]; //获取数据范围
CellRange range = sheet.Range["A2:H27"]; //在所选范围添加条件格式1
ConditionalFormatWrapper format1 = range.ConditionalFormats.AddCondition(); //条件格式类型1基于单元格值
format1.FormatType = ConditionalFormatType.CellValue;
//将数值在60到90之间的单元格进行字体加粗,并设置字体颜色为橙色
format1.FirstFormula = "";
format1.SecondFormula = "";
format1.Operator = ComparisonOperatorType.Between;
format1.FontColor = Color.Orange;
//format1.BackColor = Color.Orange; //添加条件格式2
ConditionalFormatWrapper format2 = range.ConditionalFormats.AddCondition();
format2.FormatType = ConditionalFormatType.CellValue;
format2.FirstFormula = "";
format2.Operator = ComparisonOperatorType.Less;
format2.FontColor = Color.Red;
//format2.BackColor = Color.Red;
format2.IsBold = true;
//添加边框格式(边框颜色、边框类型)到条件格式2
format2.LeftBorderColor = Color.Red;
format2.RightBorderColor = Color.DarkBlue;
format2.TopBorderColor = Color.DeepSkyBlue;
format2.BottomBorderColor = Color.DeepSkyBlue;
format2.LeftBorderStyle = LineStyleType.Medium;
format2.RightBorderStyle = LineStyleType.Thick;
format2.TopBorderStyle = LineStyleType.Double;
format2.BottomBorderStyle = LineStyleType.Double; //条件格式3的类型为自定义公式
ConditionalFormatWrapper format3 = range.ConditionalFormats.AddCondition();
format3.FormatType = ConditionalFormatType.Formula; //自定义公式将低于60的单元格所在的行填充背景色
format3.FirstFormula = "=OR($C2<60,$D2<60,$E2<60,$F2<60,$G2<60,$H2<60)";
format3.BackColor = Color.Gray; //保存并打开文档
wb.SaveToFile("result.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("result.xlsx");
}
}
}
调试运行程序,生成文档,如下:

【示例2】应用数据条类型的条件格式
using Spire.Xls;
using System.Drawing; namespace ConditionalFormatting_XLS
{
class Program
{
static void Main(string[] args)
{
//实例化workbook对象并加载文档
Workbook wb = new Workbook();
wb.LoadFromFile("sample.xlsx"); //获取第2个工作表
Worksheet sheet = wb.Worksheets[]; //获取数据范围
CellRange range = sheet.Range["B2:D7"]; //添加条件类型4为data bars
ConditionalFormatWrapper format4 = sheet.AllocatedRange.ConditionalFormats.AddCondition();
format4.FormatType = ConditionalFormatType.DataBar;
format4.DataBar.BarColor = Color.ForestGreen; //保存并打开文档
wb.SaveToFile("result1.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("result1.xlsx");
}
}
}
测试结果:

【示例3】删除条件格式
using Spire.Xls; namespace RemoveConditionalFormat_XLS
{
class Program
{
static void Main(string[] args)
{
//实例化Workbook类,加载测试文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx"); //获取第一个工作表
Worksheet sheet = workbook.Worksheets[];
//删除指定区域的条件格式
//sheet.Range["A5:H5"].ConditionalFormats.Remove(); //删除表格中的所有条件格式
sheet.AllocatedRange.ConditionalFormats.Remove(); //保存并打开文档
workbook.SaveToFile("result1.xlsx", ExcelVersion.Version2010);
System.Diagnostics.Process.Start("result1.xlsx");
}
}
}
删除效果
1. 删除指定数据范围的条件格式

2. 删除全部条件格式

本次关于“C# 应用条件格式到Excel”的示例方法介绍到此。
如需转载,请注明出处。
C# 应用Excel条件格式(一)的更多相关文章
- C# 设置Excel条件格式(二)
上一篇文章中介绍了关于设置Excel条件格式,包括基于单元格值.自定义公式等应用条件格式.应用数据条条件类型格式.删除条件格式等内容.在本篇文章中将继续介绍C# 设置条件格式的方法. 要点概述: 1. ...
- Excel条件格式
任务需求,将Excel中年龄为90后出生的人员筛选出来,并将重复的人员数据删除. 一.Excel去重 选中表格数据->数据->删除重复值 此时弹出对话框,选择去重列. 点击确定即可. 二. ...
- Java 设置Excel条件格式(高亮条件值、应用单元格值/公式/数据条等类型)
概述 在Excel中,应用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种条件格式.本篇文章,将通过Java程序示例介绍条件格式的设置方法,设置条 ...
- Excel条件格式的8大用法
1.显示重复值 选中数据区域——开始——条件格式——突出显示单元格规则——重复值——设置格式. 操作演示: 2.利用数据条展示数据 选中数据区域——开始——条件格式——数据条. 操作演示: 3.利用色 ...
- excel条件格式 满足包含xx的整行高亮
条件格式-->新建规则-->使用公式确定要设置格式的单元格 =COUNTIF($D4,"*_S_*") =COUNTIF($D4,"*_M_*&quo ...
- excel 条件格式 心的
例1: 图1 图2 $G$16 ≠G16 用G16就可以用格式刷拖动,$G$16用格式刷刷到其它单元格保持不变,判断单元格函数 ISBLANK(G16)=TRUE
- Excel催化剂开源第20波-条件格式版聚光灯功能,行列标示方便阅读
Excel聚光灯功能,辅助数据查看,选择区域下的高亮显示所在行列位置,此功能已被广大Excel开发者研究得十分透彻,各种版本的聚光灯流转在网络里,同样地也是一大堆的VBA代码,难找.Net的现成代码, ...
- C#/VB.NET 如何在Excel中使用条件格式设置交替行颜色
说起高亮数据行,不让人想起了交替颜色行,有的人把交替颜色行也都设置成高亮,不仅不美观,而且对阅读还是个干扰.隔行交替的颜色是为了阅读不串行,这些行只是环境,数据才是主体.那么如何通过C#/VB.NET ...
- Excel—使用条件格式标注今日值班者
如下图所示值班表: Step1:选中A2:G2,调出条件格式,在条件格式中,使用公式确定单元格. Step2: 在公式栏中填入以下公式: =TEXT(TODAY(),"aaaa") ...
随机推荐
- [LeetCode] Score of Parentheses 括号的分数
Given a balanced parentheses string S, compute the score of the string based on the following rule: ...
- 小米 OJ 编程比赛 01 月常规赛_灯_找规律
灯 序号:#125难度:有挑战时间限制:1000ms内存限制:32M 描述 一个屋子有 n 个开关控制着 n 盏灯,但奇怪的是,每个开关对应的不是一盏灯,而是 n-1 盏灯,每次按下这个开关,其对应 ...
- mysql中Table is read only的解决方法
首先去到mysq的bin目录 cd /usr/local/mysql/bin 执行如下mysqladmin ./mysqladmin -p flush-tables 接着输入数据库存的root密码即可
- Deployment Characteristics of "The Edge" in Mobile Edge Computing
移动边缘计算中的“边缘”部署特性 本文为SIGCOMM 2018 Workshop (Mobile Edge Communications, MECOMM)论文. 本文翻译了论文的关键内容. 摘要 移 ...
- python3 stack/ queue和deque模块
'''栈stack 先进后出FILO (first in last out)'''lst = []lst.append("张一山")lst.append("杨紫" ...
- 模仿bootstrap做的 js tooltip (添加鼠标跟随功能)
主要思路: 使用jquery hover方法,当进入时显示tooltip,移出时隐藏tooltip当设定为鼠标跟随时,使用mousemove事件显示tooltip根据tooltip显示位置设置,计算t ...
- [Swift]LeetCode560. 和为K的子数组 | Subarray Sum Equals K
Given an array of integers and an integer k, you need to find the total number of continuous subarra ...
- [SQL]LeetCode595. 大的国家 | Big Countries
SQL架构 Create table If Not Exists World (name varchar(), continent varchar(), area int, population in ...
- [Swift]LeetCode682. 棒球比赛 | Baseball Game
You're now a baseball game point recorder. Given a list of strings, each string can be one of the 4 ...
- [Swift]LeetCode814. 二叉树剪枝 | Binary Tree Pruning
We are given the head node root of a binary tree, where additionally every node's value is either a ...