• C#/VB.NET 如何在Excel中使用条件格式设置交替行颜色


    说起高亮数据行,不禁让人想到了交替颜色行,有的人把交替颜色行也都设置成高亮,不仅不美观,而且对阅读还是个干扰。隔行交替的颜色是为了阅读不串行,这些行只是环境,数据才是主体。那么如何通过C#/VB.NET代码在Excel中使用条件格式设置交替行颜色呢?下面是我整理的具体步骤,并附上C#/VB.NET代码供大家参考,希望对大家有所帮助。

    使用工具:​Free Spire.XLS for .NET​(免费版)

    程序环境

    本次测试时,在程序中引入 Free Spire.XLS for .NET。可通过以下方法引用Spire.XLS.dll文件:

    方法1:将 Free Spire.XLS for .NET 下载到本地,解压,安装。安装完成后,找到安装路径下BIN文件夹中的Spire.XLS.dll。然后在Visual Studio中打开解决方案资源管理器,鼠标右键点击引用添加引用,将本地路径BIN文件夹下的dll文件添加引用至程序。

    方法2:通过NuGet安装。可通过以下2种方法安装:

    1)可以在Visual Studio中打开解决方案资源管理器,鼠标右键点击引用管理NuGet,然后搜索“Free Spire.XLS”,点击安装。等待程序安装完成。

    2)将以下内容复制到PM控制台安装。

    Install-Package FreeSpire.XLS -Version 12.7

    具体步骤

     

    • 创建一个Workbook对象
    • 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
    • 通过 Workbook.Worsheets[index] 属性从工作簿中获取特定的工作表。
    • 使用 Worksheet.ConditionalFormats.Add() 方法向工作表添加条件格式,并返回 XlsConditionalFormats 类的对象。
    • 使用 XlsConditionalFormats.AddRange() 方法设置应用条件格式的单元格范围。
    • 使用XlsConditionalFormats.AddCondition()方法添加条件,然后设置条件公式和偶数行的单元格颜色。添加另一个条件以更改奇数行单元格的格式。
    • 使用Workbook.SaveToFile() 方法保存为Excel 文件。

     

    完整代码

     

    C#

     

    复制代码
    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("商品采买表.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.LightGreen;
    
                //保存文件
                workbook.SaveToFile("交替行颜色.xlsx", ExcelVersion.Version2016);
            }
        }
    }
    复制代码

     

    VB.NET

     

    复制代码
    Imports Spire.Xls
    Imports Spire.Xls.Core
    Imports Spire.Xls.Core.Spreadsheet.Collections
    Imports System.Drawing
    
    Namespace AlternateRowColors
        Friend Class Program
            Private Shared Sub Main(ByVal args As String())
                '创建一个Workbook对象
                Dim workbook As Workbook = New Workbook()
    
                '加载 Excel 文件
                workbook.LoadFromFile("商品采买表.xlsx")
    
                '获取特定的工作表
                Dim sheet As Worksheet = workbook.Worksheets(0)
    
                '向工作表添加条件格式
                Dim format As XlsConditionalFormats = sheet.ConditionalFormats.Add()
    
                '设置应用条件格式的范围
                format.AddRange(sheet.Range(2, 1, sheet.LastRow, sheet.LastColumn))
    
                '添加条件以根据公式更改单元格的格式
                Dim condition1 As IConditionalFormat = format.AddCondition()
                condition1.FirstFormula = "=MOD(ROW(),2)=0"
                condition1.FormatType = ConditionalFormatType.Formula
                condition1.BackColor = Color.Yellow
    
                '添加另一个条件以根据公式更改单元格的格式
                Dim condition2 As IConditionalFormat = format.AddCondition()
                condition2.FirstFormula = "=MOD(ROW(),2)=1"
                condition2.FormatType = ConditionalFormatType.Formula
                condition2.BackColor = Color.LightGreen
    
                '保存文件
                workbook.SaveToFile("交替行颜色.xlsx", ExcelVersion.Version2016)
            End Sub
        End Class
    End Namespace
    复制代码

     

    效果图

    注意:测试代码中的文件路径为程序Debug路径,仅供参考,文件路径可自定义为其他路径。

     

     

     

  • 相关阅读:
    Python少儿编程小课堂(七)入门篇(7)for 循环语句
    网络空间开源威胁情报分析的人机优化策略研究
    【概率论】第七章 参数估计
    Disqus 有评论但没显示的一种解决方案
    【面试题】15个提高Javascript开发技巧
    11设计模式-结构型模式-外观模式
    EOS的共识机制与区块生成
    C#(CSharp)入门实践项目(简易回合制游戏)
    王道链表综合题(中)
    JSP声明:变量、方法和类的声明
  • 原文地址:https://www.cnblogs.com/Carina-baby/p/16699937.html