说起高亮数据行,不让人想起了交替颜色行,有的人把交替颜色行也都设置成高亮,不仅不美观,而且对阅读还是个干扰。隔行交替的颜色是为了阅读不串行,这些行只是环境,数据才是主体。那么如何通过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路径,仅供参考,文件路径可自定义为其他路径。

C#/VB.NET 如何在Excel中使用条件格式设置交替行颜色的更多相关文章

  1. Excel根据单元格内容设置整行颜色

    1. 选择需要设置的区域,条件格式中找到“新建规则” 2. 弹出窗口中选择“使用公式确定要设置格式的单元格”一项.填写公式如下: =IF(OR($D1="已完成",$D1=&quo ...

  2. 如何在Excel中少犯二(I)

    作者:何明科链接:https://zhuanlan.zhihu.com/p/23472480来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 收到不少建议,要求开知乎Li ...

  3. 如何在latex 中插入EPS格式图片

    如何在latex 中插入EPS格式图片 第一步:生成.eps格式的图片 1.利用visio画图,另存为pdf格式的图片 利用Adobe Acrobat裁边,使图片大小合适 另存为.eps格式,如下图所 ...

  4. 【原创】如何在Android中为TextView动态设置drawableLeft等

    如何在Android中为TextView动态设置drawableLeft等   两种方式:   方式1:手动设置固有边界 Drawable drawable = getResources().getD ...

  5. Java处理Excel中的日期格式

    Java处理Excel中的日期格式 2011-12-23 17:34:03|  分类: java |举报 |字号 订阅 下载LOFTER 我的照片书  |   在Excel中的日期格式,其数值为距离1 ...

  6. [VBA]用一个简单例子说明如何在Excel中自定义函数

    Excel中的函数无疑是强大的,但是再强大的战士也有他脆弱的脚后跟[1].这两天在使用Excel的时候遇到了一个需求,要在某一个单元格里面自动计算今天是星期几(如显示 Today is Tuesday ...

  7. 如何在Excel中通过VBA快速查找多列重复的值

    今天项目组的一个同事问我如何快速的找到一个Excel中第3列和第5列的值完全重复的值,我想了想虽然Excel中自带查找重复值的功能,但是好像只能对同一列进行比较,所以就写了一个VBA进行处理,VBA非 ...

  8. 如何在Excel中提取小数点后面的数字?

    Excel中,如果某个单元格中包含一个带小数,要用公式提取该数值小数点后面的数字,例如A1单元格中包含一个数值“59178.68”,在B1单元格中输入下面的公式: =RIGHT(A1,LEN(A1)- ...

  9. POI操作excel中的日期格式处理

    转载:http://blog.csdn.net/fuxiaohui/article/details/6239925 7.3.3 POI中Excel文件Cell的类型 在读取每一个Cell的值的时候,通 ...

随机推荐

  1. Python音频处理基础知识,这不是轻轻松松~~~

    大家好鸭,我是小熊猫 咱今天来讲一讲音频处理的基础知识上才艺~~~ 1.声音的基础 2.python读取.wav音频 欢迎加入白嫖Q群:660193417### import wave import ...

  2. 配置svn,httpd启动报错 Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

    查看httpd的状态,发现80端口被占用,因为我的nginx的80端口. systemctl status httpd.service  解决: 把Apache的端口该成别的端口 vi /etc/ht ...

  3. ERROR: manifest for elasticsearch:latest not found: manifest unknown: manife

    当我们用docker下载 elasticsearch 的时候出现如下错误: 这里错误的原因是没有发现最新版,需要我们指定版本. docker pull elasticsearch:7.12.0 那我们 ...

  4. NC15975 小C的记事本

    NC15975 小C的记事本 题目 题目描述 小C最近学会了java小程序的开发,他很开心,于是想做一个简单的记事本程序练练手. 他希望他的记事本包含以下功能: 1.append(str),向记事本插 ...

  5. PaddleOCR系列(一)--环境搭建

    官方建议使用他们的docker镜像,所以我们按照他们建议的来. 环境搭建其实很简单,其实不需要在宿主机上配置cuda及cudnn,只需要保证宿主机上的cuda大于docker镜像中的就可以了. 所以我 ...

  6. NC15665 maze

    题目链接 题目 题目描述 小明来到一个由n x m个格子组成的迷宫,有些格子是陷阱,用'#'表示,小明进入陷阱就会死亡,'.'表示没有陷阱.小明所在的位置用'S'表示,目的地用'T'表示. 小明只能向 ...

  7. harbor之HTTPS安装

    1.下载解压 # tar -xvf harbor-offline-installer-v1.7.6.tgz # cd /harbror 2.下载python2.7 # apt install pyth ...

  8. 基于gitlab 15.1 pages 搭建内部博客一定行版本

    背景 基于 gitlab 15.1版 pages 搭建内部博客,参考官方文档,遇到一个又一个坑.之前看到别人吐槽说 gitlab 官方文档很差,我算是理解了.下面一个个说. 开始 按照官方文档的说法, ...

  9. md 中超链接的解析问题:解析`this.$set()`,`$`前要加空格或转义符 `\`

    在用 Editor.md 写文档时,插入超链接,发现一个奇怪的现象: 要想正确显示超链接,必须在 $ 前加空格或转义符 \

  10. 从RabbitMQ平滑迁移到RocketMQ技术实战

    作者:vivo 互联网中间件团队- Liu Runyun 大量业务使用消息中间件进行系统间的解耦.异步化.削峰填谷设计实现.公司内部前期基于RabbitMQ实现了一套高可用的消息中间件平台.随着业务的 ...