如何使用C#设置Excel单元格和工作表的背景

 更新时间:2025年05月28日 08:20:39   作者:Eiceblue  
在Excel文档的设计与美化中,单元格和工作表的背景设置不仅能提升文档的可视化效果,还能增强数据呈现的逻辑性,下面我们就来看看如何使用C#设置Excel单元格和工作表背景吧

在Excel文档的设计与美化中,单元格和工作表的背景设置不仅能提升文档的可视化效果,还能增强数据呈现的逻辑性。通过编程方式设置背景色、纹理和渐变色,甚至添加整个工作表的背景图片,可以实现自动化批量样式统一、企业模板定制等需求。本文将介绍如何在.NET平台使用C#设置Excel单元格和工作表背景,并提供完整的代码示例。

本文使用免费的 Free Spire.XLS for .NET,可通过 NuGet 安装:

Install-Package FreeSpire.XLS

用C#设置Excel单元格背景色

使用库中的CellRange.Style属性可对Excel单元格或单元格范围进行背景自定义,可设置纯色、纹理和渐变三种背景。

1. 设置普通背景色

通过设置CellRange.Style.Color和CellRange.Style.FillPattern属性,可以将单元格背景设置为纯色填充。

代码示例

using Spire.Xls;
using System.Drawing;

// 创建工作簿
Workbook workbook = new Workbook();
// 获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];

// 获取单元格,设置单元格文本,设置行高和列宽
CellRange cell = sheet.Range["B2"];
cell.Text = "普通背景色";
cell.RowHeight = 30f;
cell.ColumnWidth = 20f;

// 设置单元格填充类型和背景色
cell.Style.FillPattern = ExcelPatternType.Solid;
cell.Style.Color = Color.LightGreen;

// 保存工作簿
workbook.SaveToFile("output/CellSolidColor.xlsx", ExcelVersion.Version2016);
workbook.Dispose();

结果文件:

2. 设置背景纹理

Spire.XLS 提供多种内置纹理样式(如细点、灰度、砖块等),可通过设置CellRange.Style.FillPattern、CellRange.Style.PatternColor(设置纹理色)和CellRange.Style.Color(设置背景色)来实现。

代码示例

using Spire.Xls;
using System.Drawing;

// 创建工作簿,获取工作表
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];

// 获取单元格,设置单元格文本、行高和列宽
CellRange cell = sheet.Range["B2"];
cell.Text = "纹理背景";
cell.RowHeight = 30f;
cell.ColumnWidth = 20f;

// 设置单元格纹理背景
cell.Style.FillPattern = ExcelPatternType.Angle;
cell.Style.Color = Color.LightGray;  // 背景色
cell.Style.PatternColor = Color.Beige;  // 纹理色


// 保存工作簿
workbook.SaveToFile("output/CellPattern.xlsx", ExcelVersion.Version2016);
workbook.Dispose();

结果文件

3. 设置渐变背景

Spire.XLS 支持设置线性渐变背景色,只需设置Interior.FillPatternInterior.GradientInterior.ForeColorInterior.BackColor等属性。

代码示例

using Spire.Xls;
using System.Drawing;

// 创建工作簿,获取工作表
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];

// 获取单元格,设置单元格文本、行高和列宽
CellRange cell = sheet.Range["B2"];
cell.Text = "渐变背景";
cell.RowHeight = 30f;
cell.ColumnWidth = 20f;

// 设置单元格渐变背景
cell.Style.FillPattern = ExcelPatternType.Gradient;
cell.Style.Interior.Gradient.BackColor = Color.Pink;
cell.Style.Interior.Gradient.ForeColor = Color.Beige;


// 保存工作簿
workbook.SaveToFile("output/GradientFillColor.xlsx", ExcelVersion.Version2016);
workbook.Dispose();

结果文件

用C#设置Excel工作表背景图片

除了单元格背景,还可以为整个工作表设置背景图片,适合用于插入水印、品牌标志等视觉增强内容。

操作步骤

  • 创建Workbook对象并添加工作表。
  • 使用Worksheet.SetBackground(string imagePath)方法设置背景图。
  • 保存Excel文档。

代码示例

using Spire.Xls;
using System.Drawing;

// 载入工作簿,获取工作表
Workbook workbook = new Workbook();
workbook.LoadFromFile("Sample.xlsx");
Worksheet sheet = workbook.Worksheets[0];

// 载入背景图
Bitmap image = new Bitmap(Image.FromFile("BackgroundImage1.jpg"));

// 应用背景图到工作表
sheet.PageSetup.BackgoundImage = image;

// 保存工作簿
workbook.SaveToFile("output/SheetBackgroundImage.xlsx");
workbook.Dispose();

结果文件

总结

通过Free Spire.XLS for .NET,C#开发者可以轻松设置Excel文档中的:

  • 单元格普通背景色:用于高亮显示重点数据;
  • 单元格背景纹理:增强表格风格;
  • 单元格渐变背景:提升文档专业感;
  • 工作表背景图:实现品牌统一或添加水印。

这些功能适用于自动生成报表、企业模板美化、文档视觉统一等场景。

到此这篇关于如何使用C#设置Excel单元格和工作表的背景的文章就介绍到这了,更多相关C#设置Excel背景内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 微信跳一跳自动脚本C#代码实现

    微信跳一跳自动脚本C#代码实现

    这篇文章主要为大家详细介绍了微信跳一跳自动脚本C#代码实现资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • 利用C#实现在Word中更改字体颜色

    利用C#实现在Word中更改字体颜色

    在日常工作中,我们有时会需要修改字体的颜色来突出文本重点,让读者更容易抓住文章要点。在今天这篇文章中,我将为大家介绍如何以编程方式,在Word更改字体颜色,感兴趣的可以了解一下
    2023-02-02
  • C#12中的新增功能使用总结

    C#12中的新增功能使用总结

    这篇文章主要为大家详细介绍了C#12中的7个新增功能的使用,文中的示例代码讲解详细,对我们深入学习C#有一定的帮助,感兴趣的小伙伴可以了解下
    2023-10-10
  • C#判断网站是否能访问或者断链的方法

    C#判断网站是否能访问或者断链的方法

    这篇文章主要介绍了C#判断网站是否能访问或者断链的方法,实例分析了C#判断网站是否能访问的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • C#窗体传值实例汇总

    C#窗体传值实例汇总

    这篇文章主要介绍了C#窗体传值,实例形式汇总了静态变量传值、委托传值、对话框之间的传值等常见应用技巧,需要的朋友可以参考下
    2014-12-12
  • C#反射调用拓展类方法实例代码

    C#反射调用拓展类方法实例代码

    这篇文章主要给大家介绍了关于C#反射调用拓展类方法的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-01-01
  • DataGridView清除显示的数据、设定右键菜单

    DataGridView清除显示的数据、设定右键菜单

    这篇文章介绍了DataGridView清除显示的数据、设定右键菜单的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-02-02
  • C#中神器类BlockingCollection的实现详解

    C#中神器类BlockingCollection的实现详解

    如果你想玩转C# 里面多线程,工厂模式,生产者/消费者,队列等高级操作,就可以和我一起探索这个强大的线程安全提供阻塞和限制功能的C#神器类BlockingCollection吧
    2023-02-02
  • C#中SQL参数传入空值报错解决方案

    C#中SQL参数传入空值报错解决方案

    这篇文章主要介绍了C#中SQL参数传入空值报错解决方案,需要的朋友可以参考下
    2017-06-06
  • WinForm项目中添加帮助文档功能

    WinForm项目中添加帮助文档功能

    这篇文章介绍了WinForm项目中添加帮助文档功能的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06

最新评论