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路徑,僅供參考,文件路徑可自定義為其他路徑。