使用C#代码使用条件格式为 Excel 隔行设置颜色

对于数据较多的工作表,为相邻行设置不同的背景颜色,可以帮助区分数据行,让内容更容易查看和阅读。实现隔行变色的方法有很多,例如使用 Excel 内置的表格样式,或者通过条件格式设置规则。本文将介绍如何在 C# 和 VB.NET 中使用条件格式为 Excel 工作表设置交替行颜色,并结合相关的 .NET Excel 处理组件完成操作。

安装相关 .NET 组件

开始之前,需要在 .NET 项目中添加用于处理 Excel 文件的相关 DLL 文件。你可以从组件的官方资源中获取安装包,也可以通过 NuGet 安装相应的程序包。

cs 复制代码
PM> Install-Package Spire.XLS

使用条件格式为 Excel 隔行设置颜色

以下是使用条件格式为 Excel 工作表中的奇偶行设置不同颜色的基本步骤:

  • 创建一个 Workbook 对象。
  • 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
  • 通过 Workbook.Worksheetsindex 属性获取工作簿中的指定工作表。
  • 使用 Worksheet.ConditionalFormats.Add() 方法为工作表添加条件格式,并获取 XlsConditionalFormats 对象。
  • 使用 XlsConditionalFormats.AddRange() 方法设置需要应用条件格式的单元格区域。
  • 使用 XlsConditionalFormats.AddCondition() 方法添加条件,并设置条件公式以及偶数行的单元格颜色。
  • 再添加一个条件,为奇数行设置相应的单元格格式。
  • 使用 Workbook.SaveToFile() 方法将处理后的工作簿保存为 Excel 文件。

完整示例代码如下:

cs 复制代码
using Spire.Xls;
using Spire.Xls.Core;
using Spire.Xls.Core.Spreadsheet.Collections;
using System.Drawing;

namespace AlternateRowColors
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个 Workbook 对象
            Workbook workbook = new Workbook();

            // 加载 Excel 文件
            workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.xlsx");
            
            // 获取第一个工作表
            Worksheet sheet = workbook.Worksheets[0];

            // 为工作表添加条件格式
            XlsConditionalFormats format = sheet.ConditionalFormats.Add();

            // 设置应用条件格式的单元格区域
            format.AddRange(sheet.Range[2, 1, sheet.LastRow, sheet.LastColumn]);

            // 添加条件,根据公式更改单元格格式
            IConditionalFormat condition1 = format.AddCondition();        
            condition1.FirstFormula = "=MOD(ROW(),2)=0";
            condition1.FormatType = ConditionalFormatType.Formula;
            condition1.BackColor = Color.Yellow;

            // 添加另一个条件,根据公式更改单元格格式
            IConditionalFormat condition2 = format.AddCondition();
            condition2.FirstFormula = "=MOD(ROW(),2)=1";
            condition2.FormatType = ConditionalFormatType.Formula;
            condition2.BackColor = Color.LightSeaGreen;

            // 将工作簿保存为 Excel 文件
            workbook.SaveToFile("AlternateRowColors.xlsx", ExcelVersion.Version2016);
        }
    }
}

总结

通过条件格式,可以根据行号自动为 Excel 工作表中的奇数行和偶数行设置不同的背景颜色,从而让数据更加清晰、易于查看。本文通过 C# 示例,首先加载 Excel 文件并获取目标工作表,然后设置需要应用条件格式的区域,并利用 MODROW 函数判断当前行是奇数行还是偶数行,分别应用不同的颜色。最后,将设置完成的工作簿保存为新的 Excel 文件。

这种方法无需逐行修改单元格格式,当工作表中的数据发生变化时,条件格式也可以根据规则自动调整,适用于数据量较大的 Excel 表格。

相关推荐
leihefeng3 小时前
PX04-用 Python 读 Excel 画折线图,还能直接插回 Excel 文件
python·excel
何以解忧唯有撸码4 小时前
【开源】c#造个轮子-日程安排工具
c#·自定义控件
周杰伦fans5 小时前
CAD菜单栏和工具栏都不见了,怎么显示?
其他·c#
曹牧5 小时前
C#:HashSet<T> 去重
c#
czhc11400756635 小时前
起点、口径与因果:今天用错的七把尺子
c#
yanlaifan6 小时前
Excel中指定单元格不能输入内容的方法
excel
c#上位机18 小时前
C#上位机项目实战——Task.Run执行带参数的方法
c#·上位机
Lost of 程序猿1 天前
用 YARP 为 .NET 微服务搭一座“立交桥“:路由转发与生产配置实践
c#·asp.net
babe小鑫1 天前
信息与计算科学专业应届生面试 怎么证明自己能解决业务问题
学习·r语言·excel