当前位置: 首页 > news >正文

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);
        }
    }
}

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

相关文章:

  • 【RabbitMQ】RabbitMQ如何保证消息不丢失?
  • sqlite3
  • Linux 音频驱动 WM8960 音频 DAC IC 音乐播放与录音
  • 第四周日志-用网络请求理解bp(2)
  • 华为OD机试-会议室占用时间段(Java 2024 C卷 100分)
  • Rust语言学习
  • 体育直播视频源格式解析:M3U8 vs FLV
  • mysql中find_in_set()函数用法详解及增强函数
  • mysql-DELETE、DROP 和 TRUNCATE区别
  • deepSpeed多机多卡训练服务器之间,和服务器内两个GPU是怎么通信
  • Linux 系统性能优化高级全流程指南
  • 免费开源的NAS解决方案:TrueNAS
  • 工厂方法模式、简单工厂模式与抽象工厂模式的对比
  • 正则表达式:文本处理的瑞士军刀
  • 如何在云端平台上建立 30,000 名用户的网页 MMO游戏环境-2 (服务器)
  • 【工业现场总线】控制网络的主要特点是?OSI参考模型的分层是?
  • `chromadb` 是什么
  • hive 数据简介
  • C++通过宏将任何内容转成字符串的方式
  • Git的基本使用
  • 19个剧团15台演出,上海民营院团尝试文旅融合新探索
  • 报告:4月份新增发行的1763亿元专项债中,投向房地产相关领域约717亿元
  • 百济首次实现季度营业利润扭亏,泽布替尼销售额近57亿元
  • 印巴冲突升级,巴防长称已击落5架印度战机
  • 央行行长详解降息:将通过利率自律机制引导商业银行相应下调存款利率
  • 山东莒县农商银行去年收入、利润下降,资本充足率等指标增长