如何在Excel中导出数据周围创建边框?我导出这样的数据:
For i = 0 To ds1.Tables(0).Rows.Count - 1
For j = 1 To ds1.Tables(0).Columns.Count - 1
xlWorkSheet.Cells(i + 1, j) = ds1.Tables(0).Rows(i).Item(j)
Next
Next
答案 0 :(得分:1)
您可以通过将xlWorksheet.Range.Borders.LineStyle设置为等于Excel.XlLineStyle枚举之一来创建边框:
xlWorksheet.Range("A1:B2").Borders.LineStyle = Excel.XlLineStyle.xlContinuous
Borders.Linestyle默认设置单元格所有边的边框。如果你只想做卖出的一面,你只需要向Borders添加一个border enum参数,如下所示:
xlWorksheet.Range("A1:B2").Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlLineStyle.xlContinuous
一旦开始输入,Visual Studio的intellisense将显示xlBordersIndexes和XlLineStyles的不同选项
编辑:要突出显示刚刚导出的内容,请使用行数和列数来定义范围:
xlWorksheet.Range(xlWorksheet.Cells(1, 1), xlWorksheet.Cells(ds1.Tables(0).Rows.Count, ds1.Tables(0).Columns.Count)).Borders.LineStyle = Excel.XlLineStyle.xlContinuous
请注意,上面的代码只是您导出的第一个数据集的示例,对于其余数据集,您必须稍微修改该行。范围起始单元格必须设置为您开始导出第二个数据集而不是单元格(r1,c1)的任何位置。范围的结束单元格将是单元格([startrow + ds.rows.count],[startcol + ds.columns.count])......类似这样:
Dim startrow As Integer = 50
Dim startcol As Integer = 1
xlWorksheet.Range(xlWorksheet.Cells(startrow, startcol), xlWorksheet.Cells(startrow + ds1.Tables(0).Rows.Count, startcol + ds1.Tables(0).Columns.Count)).Borders.LineStyle = Excel.XlLineStyle.xlContinuous