如何使用C#在Excel中的多个单元格周围设置边框

Arn*_*out 13 c# excel border

我正在开发一个创建excel文件的项目.

我在多个单元格上放置边框以组织excel文件时遇到问题.

假设我想要从B5到B10的边界.B5,B6,B7之间不应该有边界......

目前,我有这个代码:

workSheet_range = worksheet.get_Range("B5", "B10");
workSheet_range.Borders.Color = System.Drawing.Color.Black.ToArgb();
Run Code Online (Sandbox Code Playgroud)

它会生成边框,但是它会在每个单元格周围放置边框,而不是所有单元格都有一个大边框.

我怎么能做到这一点?

Tim*_*ams 14

您需要单独设置这些

.Borders[Excel.XlBordersIndex.xlEdgeBottom] 
.Borders[Excel.XlBordersIndex.xlEdgeRight]
.Borders[Excel.XlBordersIndex.xlEdgeLeft]  
.Borders[Excel.XlBordersIndex.xlEdgeTop]
Run Code Online (Sandbox Code Playgroud)

  • 您也可以打开LineStyle; `.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;` (7认同)
  • 这个答案假设有一点“borders[Excel.XlBordersIndex.xlEdgeBottom].LineStyle = Excel.XlLineStyle.xlContinously;” (3认同)

Sim*_*mon 9

也许这可以帮助:

workSheet_range.BorderAround(Excel.XlLineStyle.xlContinuous, Excel.XlBorderWeight.xlThick);
Run Code Online (Sandbox Code Playgroud)


Sar*_*avu 5

我这样做并没有影响性能。我正在对一个简单的 Excel 进行格式化:

之前

在此输入图像描述

我设法将范围动态存储在exRangeA1:C4中的变量中,并使用下面的代码给出边框

((Range)excelSheet.get_Range(exRange)).Cells.Borders.LineStyle = XlLineStyle.xlContinuous;
Run Code Online (Sandbox Code Playgroud)


在此输入图像描述