Excel处理控件Spire.XLS系列教程:C# 在 Excel 中添加或删除单元格边框

单元格边框是指在单元格或单元格区域周围添加的线条。它们可用于不同的目的,如分隔工作表中的部分、吸引读者注意重要的单元格或使工作表看起来更美观。本文将介绍如何使用 Spire.XLS for .NET 在 C# 中添加或删除 Excel 单元格边框

安装 Spire.XLS for .NET

E-iceblue旗下spire系列产品是国产文档处理领域的优秀产品,支持国产化信创。首先,您需要将 Spire.XLS for .NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。

Spire.XLS for .NET下载

PM> Install-Package Spire.XLS

C# 在 Excel 中添加单元格边框

Spire.XLS for .NET 支持给 Excel 单元格添加各种边框,如左边框、右边框、上边框、下边框、对角线边框、内边框和外边框。

您可以为单个单元格或单元格区域添加特定边框或多个边框。此外,还可以为边框设置不同的线条样式和线条颜色。以下是为 Excel 单元格设置不同类型、不同线条样式和线条颜色的边框的主要步骤:

  • 创建一个 Workbook 类的对象。
  • 通过 Workbook.Worksheets[int] 属性根据索引获取特定工作表。
  • 通过 Workbook.Range[] 属性获取特定单元格区域。
  • 通过 CellRange.Borders[BordersLineType] 属性从单元格区域的 Borders 集合中获取特定边框(如左、右、上、下和对角线)。
  • 通过 IBorder.LineStyle 属性设置特定边框的线条样式。
  • 通过 IBorder.Color 属性设置特定边框的线条颜色。
  • 通过 Workheet.Range[] 属性获取特定单元格区域。
  • 使用 CellRange.BorderAround(LineStyleType, Color) 方法和 CellRange.BorderInside(LineStyleType, Color) 方法为单元格区域添加外部边框和内部边框。请注意,内边框不能应用于单个单元格。
  • 通过 Worksheet.Range[] 属性获取特定单元格区域。
  • 通过 BordersCollection.LineStyle 和 BordersCollection.Color 属性为单元格区域的边框设置线条样式和线条颜色,然后为单元格区域的对角线边框设置线条样式和颜色。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。
using Spire.Xls;
using Spire.Xls.Core;
using System.Drawing;namespace AddCellBorders
{class Program{static void Main(string[] args){// 创建Workbook对象Workbook workbook = new Workbook();// 获取第一个工作表Worksheet sheet = workbook.Worksheets[0];// 为 B2 单元格设置左、右、上、下和斜向上边框CellRange range = sheet.Range["B2"];IBorder leftBorder = range.Borders[BordersLineType.EdgeLeft];leftBorder.LineStyle = LineStyleType.MediumDashDotDot;leftBorder.Color = Color.Red;IBorder rightBorder = range.Borders[BordersLineType.EdgeRight];rightBorder.LineStyle = LineStyleType.MediumDashed;rightBorder.Color = Color.Red;IBorder topBorder = range.Borders[BordersLineType.EdgeTop];topBorder.LineStyle = LineStyleType.Medium;topBorder.Color = Color.Red;IBorder bottomBorder = range.Borders[BordersLineType.EdgeBottom];bottomBorder.LineStyle = LineStyleType.Medium;bottomBorder.Color = Color.Red;IBorder diagonalUpBorder = range.Borders[BordersLineType.DiagonalUp];diagonalUpBorder.LineStyle = LineStyleType.Thin;diagonalUpBorder.Color = Color.Red;// 为 C4 单元格设置对角线边框range = sheet.Range["C4"];diagonalUpBorder = range.Borders[BordersLineType.DiagonalUp];diagonalUpBorder.LineStyle = LineStyleType.Double;diagonalUpBorder.Color = Color.Blue;IBorder diagonalDownBorder = range.Borders[BordersLineType.DiagonalDown];diagonalDownBorder.LineStyle = LineStyleType.Double;diagonalDownBorder.Color = Color.Blue;// 为单元格 D6 设置外部边框range = sheet.Range["D6"];range.BorderAround(LineStyleType.Double, Color.Green);// 为单元格区域 E8:F10 设置内边框range = sheet.Range["E8:F10"];range.BorderInside(LineStyleType.MediumDashed, Color.DarkGray);// 为单元格区域 F12:G14 设置内部和外部边框range = sheet.Range["F12:G14"];range.BorderInside(LineStyleType.MediumDashed, Color.Pink);range.BorderAround(LineStyleType.Medium, Color.Magenta);// 为单元格区域 G16:H18 设置边框range = sheet.Range["G16:H18"];range.Borders.LineStyle = LineStyleType.Thick;range.Borders.Color = Color.Cyan;// 为单元格区域 G16:H18 设置对角线边框的线条样式和线条颜色diagonalUpBorder = range.Borders[BordersLineType.DiagonalUp];diagonalUpBorder.LineStyle = LineStyleType.Dotted;diagonalUpBorder.Color = Color.DarkGray;diagonalDownBorder = range.Borders[BordersLineType.DiagonalDown];diagonalDownBorder.LineStyle = LineStyleType.Dotted;diagonalDownBorder.Color = Color.DarkGray;// 保存结果文件workbook.SaveToFile("Excel边框.xlsx", ExcelVersion.Version2016);}}
}

C# 删除 Excel 单元格边框

通过将 CellRange.Borders.LineStyle 属性设置为 LineStyleType.None,可以删除单元格或单元格区域的所有边框。具体步骤如下:

  • 创建一个 Workbook 类的对象。
  • 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
  • 通过 Workbook.Worksheets[int] 属性根据索引获取特定工作表。
  • 通过 Workbook.Range[] 属性获取特定单元格区域。
  • 通过将 CellRange.Borders.LineStyle 属性设置为 LineStyleType.None,删除单元格区域的边框。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。
using Spire.Xls;namespace RemoveCellBorders
{class Program{static void Main(string[] args){// 创建Workbook对象Workbook workbook = new Workbook();// 加载 Excel 文件workbook.LoadFromFile("Excel边框.xlsx");// 获取第一个工作表Worksheet sheet = workbook.Worksheets[0];// 删除单元格区域 G16:H18 的边框CellRange range = sheet.Range["G16:H18"];range.Borders.LineStyle = LineStyleType.None;// 保存结果文件workbook.SaveToFile("删除边框.xlsx", ExcelVersion.Version2016);}}
}

————————————————————————————————————————

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/37269.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【工具分享】vscode+deepseek的接入与使用

目录 第一章 前言 第二章 获取Deepseek APIKEY 2.1 登录与充值 2.2 创建API key 第三章 vscode接入deepseek并使用 3.1 vscode接入deepseek 3.2 vscode使用deepseek 第一章 前言 deepseek刚出来时有一段时间余额无法充值,导致小编没法给大家发完整的流程&…

Android之悬浮窗实现

文章目录 前言一、效果图二、实现步骤1.AndroidManifest权限以及service注册2.service代码3.activity实现 总结 前言 经常接触音视频以及直播的同学应该知道,悬浮窗是必备需求,今天就记录一下自己悬浮窗的视线过程,流程就是点击缩小按钮回到…

25.单例模式实现线程池

一、线程池的概念 1.1 线程池的介绍 线程池是一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅…

基于springboot的免税商品优选购物商城(020)

摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势,免税商品优选购物商城当然也不能排除在外,随着购物商城的不断成熟,它彻底改变了过去传统的免税商品优选购物商城方式&…

RIP路由欺骗攻击与防御实验详解

一、基础网络配置 1. 路由器R1配置 interface GigabitEthernet0/0/0ip address 192.1.2.254 255.255.255.0 ! interface GigabitEthernet0/0/1ip address 192.1.3.254 255.255.255.0 ! router rip 1version 2network 192.1.2.0network 192.1.3.0 2. 路由器R2配置 interface…

整理和总结微信小程序的高频知识点

前言 近期萌生了一些想法,感觉可以做一个小程序作为产出。 但小程序做得比较少,因此边做边复习。整理和总结了一些高频知识点和大家一起分享。 一、模板和组件 1.1模板(Template) 优势 简单灵活:模板定义和使用都较…

如何检查CMS建站系统的插件是否安全?

检查好CMS建站系统的插件安全是确保网站安全的重要环节,对于常见的安全检查,大家可以利用以下几种有效的方法和工具,来帮你评估插件的安全性。 1. 检查插件来源和开发者信誉 选择可信来源:仅从官方插件库或可信的第三方开发者处…

RAG优化:利用python实现上下文感知(扩展)增强检索效果

检索增强生成(RAG)通过从外部知识源检索相关信息来增强AI的响应能力。传统的检索方法通常返回孤立的文本片段,这可能导致回答不完整。 为了解决这个问题,我们引入了基于上下文的检索方法,确保检索到的信息包含相邻的文本片段,以提高回答的连贯性。 通过结合重叠分块、上…

在 macOS Sequoia 15.2 中启用「三指拖动」并实现快速复制的完整指南 ✨

在 macOS Sequoia 15.2 中启用「三指拖动」并实现快速复制的完整指南 🍎✨ 适用系统:macOS Sequoia 版本15.2 及以上 一、功能简介 🌟 通过「三指拖动」手势,你可以轻松完成以下操作: • 移动文件/文本:直…

LeetCode 2614.对角线上的质数:遍历(质数判断)

【LetMeFly】2614.对角线上的质数:遍历(质数判断) 力扣题目链接:https://leetcode.cn/problems/prime-in-diagonal/ 给你一个下标从 0 开始的二维整数数组 nums 。 返回位于 nums 至少一条 对角线 上的最大 质数 。如果任一对角线上均不存在质数&…

基于Java(Springboot+Gradle+Mybatis+templeaf 框架)+Mysql构建的(Web)校园二手平台系统

二手市场 1 系统分析 1.1 需求分析 项目背景 国内最大的二手服务商“易趣、淘宝”其注册用户有 61% 为在校大学生,其他占 25% 为社会人士注册,他们每年与学生的交易量占总交易量的 85% 以上. “易淘”均不向交易双方任何用户提供商品质保和售后服务…

ue5蓝图项目转换为c++项目 遇到的问题

蓝图项目转c项目 工具/新建C类,随便新建一个c类,即可从蓝图项目转换为c项目 如果转换正常,UE5会要求重新编译程序,并在编译完后自动打开VS 转换前要备份 转换失败的原因 电脑上必须安装了.Net6.0,其他版本高了低了…

挖矿------获取以太坊测试币

文章目录 挖矿------获取以太坊测试币通过水龙头获取以太坊测试币了解Sepolia是什么?水龙头(Faucet)是什么?Gitcoin Passport是什么? 操作1.MetaMask钱包2.将MetaMask切换到Sepolia测试网络3.用MetaMask连接Gitcoin Pa…

玩转物联网-4G模块如何快速将数据上传到巴法云(TCP篇)

目录 1 前言 2 环境搭建 2.1 硬件准备 2.2 软件准备 2.3 硬件连接 2.4 检查驱动 3 巴法云平台设备创建 3.1 创建账号 3.2 进入巴法云 3.3 获取联网参数 4 连接巴法云 4.1 打开配置工具读取基本信息 4.2 设置连接参数进行数据交互 4.2.1 建立TCP连接 4.2.2 订阅主题 4.2.3 发布信…

Vue3 在组件中判断事件是否注册

效果 用途 我想用是否注册事件,来控制组件中图标的显示与隐藏 实现 通过组件中判断是否注册了相应的函数,来判断 const checkEvent () > {const instance getCurrentInstance();console.log(instance?.vnode?.props:>, instance?.vnode?…

ssh连接解析时间过长如何解决

[rootkvm ~]# vim /etc/ssh/sshd_config #修改配置 [rootkvm ~]# systemctl restart sshd #重启服务

【Linux】——进程状态僵尸进程孤儿进程

目录 前言 基本进程状态 运行状态 阻塞状态 挂起状态 Linux下的进程状态 僵尸进程 孤儿进程 结语 前言 进程的状态反映了它在执行过程中的不同阶段,例如创建、就绪、运行、阻塞和终止等。这些状态之间的转换由操作系统的调度算法和进程的行为共同决定。通…

信创系统极速文件查找:locate 命令详解

原文链接:信创系统极速文件查找:locate 命令详解 Hello,大家好啊!今天给大家带来一篇信创终端操作系统上 locate 命令详解的文章。在 Linux 及信创终端操作系统(如 统信 UOS、麒麟 KOS)中,查找…

鸿蒙数据持久化之首选项

场景介绍 用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。当用户希望有一个全局唯一存储的地方,可以采用用户首选项来进行存储。Preferences会将该数据缓存在内存中,当用户读取…

PyTorch分布式训练中各节点如何通信

深度学习 文章目录 深度学习前言pytorch如何初始化分布式训练怎么知道要使用哪几台机器进行训练的如何根据标识进行初始化(init_method)如何获取进程的唯一标识rank如何实现数据如何分发 前言 同学们在处理分布式训练时经常会遇到以下几个疑问&#xff…