当前位置: 代码网 > it编程>编程语言>Asp.net > C#代码实现在Excel中添加或移除单元格边框

C#代码实现在Excel中添加或移除单元格边框

2026年03月04日 Asp.net 我要评论
单元格边框是指可以添加在单个单元格或一组单元格周围的线条。通过设置边框,可以实现多种效果,例如划分工作表中的不同区域、突出显示重要数据,或让报表整体看起来更加清晰美观。本文将介绍如何使用 spire.

单元格边框是指可以添加在单个单元格或一组单元格周围的线条。通过设置边框,可以实现多种效果,例如划分工作表中的不同区域、突出显示重要数据,或让报表整体看起来更加清晰美观。

本文将介绍如何使用 spire.xls for .net,在 c# 和 vb.net 中实现为 excel 添加或删除单元格边框的操作方法。

安装 spire.xls for .net

在开始之前,需要先将 spire.xls for .net 安装到您的 .net 项目中。您可以将该产品包中的 dll 文件手动添加为项目引用,也可以通过 nuget 进行安装。

dll 文件可通过官网下载获取,或者直接在 nuget 包管理器中搜索并安装。

pm> install-package spire.xls

在 c# 和 vb.net 中为 excel 添加单元格边框

spire.xls for .net 支持为 excel 单元格添加多种类型的边框,包括左边框、右边框、上边框、下边框、对角线边框、内部边框和外部边框等。

您既可以为单个单元格设置某一种边框,也可以为一个单元格区域批量添加多种边框。同时,还可以自定义边框的线条样式和颜色,以满足不同的排版需求。

下面是为单元格或单元格区域设置不同类型、不同样式和不同颜色边框的主要步骤:

  • 创建 workbook 类的实例。
  • 通过 workbook.worksheets[int] 属性,根据索引获取指定的工作表。
  • 通过 worksheet.range[string] 属性,根据单元格名称获取指定的单元格区域。
  • 通过 cellrange.borders[borderslinetype] 属性,从单元格区域的 borders 集合中获取指定类型的边框(如左、右、上、下或对角线边框)。
  • 使用 iborder.linestyle 属性设置指定边框的线条样式。
  • 使用 iborder.color 属性设置指定边框的颜色。
  • 如需为单元格区域添加外部或内部边框,可调用 cellrange.borderaround(linestyletype, color) 方法(添加外部边框)或 cellrange.borderinside(linestyletype, color) 方法(添加内部边框)。需要注意,内部边框不能应用于单个单元格。
  • 也可以通过 borderscollection.linestyleborderscollection.color 属性,为整个单元格区域统一设置边框样式和颜色,然后再单独设置对角线边框的样式和颜色。
  • 最后,使用 workbook.savetofile() 方法保存结果文件。

按照以上步骤,即可灵活地为 excel 单元格添加各种边框效果。

具体示例代码如下:

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("addborders.xlsx", excelversion.version2013);
        }
    }
}

在 c# 和 vb.net 中删除 excel 单元格边框

如果需要移除某个单元格或单元格区域的所有边框,可以将 cellrange.borders.linestyle 属性设置为 linestyletype.none,即可清除该区域的边框样式。

具体操作步骤如下:

  • 创建 workbook 类的实例。
  • 使用 workbook.loadfromfile() 方法加载需要处理的 excel 文件。
  • 通过 workbook.worksheets[int] 属性,根据索引获取指定的工作表。
  • 通过 worksheet.range[string] 属性,根据单元格名称获取目标单元格或单元格区域。
  • cellrange.borders.linestyle 属性设置为 linestyletype.none,以移除该区域的所有边框。
  • 使用 workbook.savetofile() 方法保存结果文件。

按照以上步骤,即可快速删除 excel 中指定单元格或区域的边框。

示例代码如下:

using spire.xls;

namespace removecellborders
{
    class program
    {
        static void main(string[] args)
        {
            // 创建 workbook 实例
            workbook workbook = new workbook();
            // 加载 excel 文件
            workbook.loadfromfile("addborders.xlsx");

            // 获取第一个工作表
            worksheet sheet = workbook.worksheets[0];

            // 移除单元格区域 g16:h18 的所有边框
            cellrange range = sheet.range["g16:h18"];
            range.borders.linestyle = linestyletype.none;

            // 保存结果文件
            workbook.savetofile("removeborders.xlsx", excelversion.version2013);
        }
    }
}

到此这篇关于c#代码实现在excel中添加或移除单元格边框的文章就介绍到这了,更多相关c# excel添加或移除单元格边框内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com