如何通过Delphi程序给Excel表格设置表格线

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过Delphi程序给Excel表格设置表格线相关的知识,希望对你有一定的参考价值。

Excel 作为常用的办公软件,最常见的应用就是制作各种电子表格,同样,使用 delphi 语言编写出 excel 的表格也是编程人员常见的任务。

如何通过Delphi程序给Excel表格设置表格线,在完成这个任务之前,需要补充了解一些必需的资料:

在 Excel 里的,能够进行表格线设置的操作对象是 Border 对象:


这个对象具有以下成员:


Borders 具有以下边框属性:

各边框代表值如下:


各边框线条的样式定义:


知道了上面的知识之后,编写代码就比较简单了,以下是示例的代码:

procedure TForm1.Button1Click(Sender: TObject);
//先定义线型常量,也可以不定义,定义是为了便于记忆与代码易读
const
  xlInsideHorizontal = $0000000C;
  xlInsideVertical = $0000000B;
  xlDiagonalDown = $00000005;
  xlDiagonalUp = $00000006;
  xlEdgeBottom = $00000009;
  xlEdgeLeft = $00000007;
  xlEdgeRight = $0000000A;
  xlEdgeTop = $00000008;

  xlContinuous = 1;
  xlDash = -4115;
  xlDashDot = 4;
  xlDashDotDot = 5;
  xlDot = -4118;
  xlDouble = -4119;
  xlSlantDashDot = -4142;
  xlLineStyleNone = 13;

var ExcelApp: Variant;
begin
  ExcelApp := CreateOleObject(\'Excel.Application\');//建立 Excel 联系
  ExcelApp.Visible := True;  //显示 excel 窗口
  ExcelApp.WorkBooks.Open(\'d:\\Demo.xls\'); //打开指定的 excel 文件

  //设置表格中指定单元格的上边框
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeTop].LineStyle := xlDouble;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeTop].Color := clRed;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeTop].Weight := 4;

  //设置表格中指定单元格的底边框
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeBottom].LineStyle := xlDouble;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeBottom].Color := clRed;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeBottom].Weight := 4;

  //设置表格中指定单元格的左边框
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeLeft].LineStyle := xlDouble;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeLeft].Color := clRed;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeLeft].Weight := 4;

  //设置表格中指定单元格的右边框
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeRight].LineStyle := xlDouble;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeRight].Color := clRed;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlEdgeRight].Weight := 4;

  //设置表格中间所有横线
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlInsideHorizontal].LineStyle := xlContinuous;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlInsideHorizontal].Color := clBlue;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlInsideHorizontal].Weight := 2;

  //设置表格中间所有纵线
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlInsideVertical].LineStyle := xlContinuous;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlInsideVertical].Color := clBlue;
  ExcelApp.ActiveSheet.Range[\'A2:H7\'].Borders[xlInsideVertical].Weight := 2;

end;


运行效果截图:


参考技术A 1、加边框方才在其余处所找到了这个问题的解决办法,现颁布如下excelworksheet1.range['a1','a1'].borders[i].linestyle:=1; i是参数,代表单位格的四边以及琅绫擎的斜线 1-左 2-右 3-顶 4-底 5-斜( \ ) 6-斜( / ) 2、控制单位格 excelworksheet1.Rows.Range_['a1','a1'].Font.Size:='10'; //字体大大小 excelworksheet1.Rows.Range_['a1','a1'].Font.Name:='Garamond'; //字体名称 excelworksheet1.Rows.Range_['a1','a1'].Font.Color:=clred; //字体色彩 excelworksheet1.Rows.Range_['a1','a1'].Font.bold:=true; //字体加粗 excelworksheet1.Rows.Range_['a1','a1'].HorizontalAlignment:= xlCenter; //文字居中 excelworksheet1.Rows.Range_['a1','a1'].VerticalAlignment:= xlBottom; //文字向下对齐 excelworksheet1.Rows.Range_['a1','a1'].WrapText:=True; //主动换行 excelworksheet1.Rows.Range_['a1','a1'].Orientation:= 0; //偏向为0度 excelworksheet1.Rows.Range_['a1','a1'].AddIndent:= False;//不增长缩进 excelworksheet1.Rows.Range_['a1','a1'].ShrinkToFit:= False;//不缩小字体填充 excelworksheet1.Rows.Range_['a1','a1'].MergeCells:= False;//不归并单位格

excel如何设置背景颜色

参考技术A 可以通过使用“填充颜色”添加或更改单元格的背景色或图案,来突出显示单元格中的数据。 操作方法如下:
选择要突出显示的单元格。

提示:
要对整个工作表使用不同的背景色,请单击“全选”按钮。 这将隐藏网格线,但通过显示所有单元格周围的单元格边框可以提高工作表的可读性。

“全选”按钮

单击“开始”>“填充颜色” 按钮图像 旁边的箭头 ,或按 Alt+H, H。

“开始”选项卡上的“字体”组

在“主题颜色”或“标准颜色”下方,选择所需的颜色。

字体颜色选取器
要使用自定义颜色,请单击“其他颜色”,然后在“颜色”对话框中选择所需的颜色。

提示: 要应用最近选择的颜色,只需单击“填充颜色” 按钮图像 。 您还可以在“最近使用的颜色”下方查找多达 10 种最近选择的自定义颜色。

应用图案或填充效果

当您不只需要纯色填充时,请尝试应用图案或填充效果。

选择要设置其格式的单元格或单元格区域。

单击“开始”>“设置单元格格式”对话框启动器,或者按 Ctrl+Shift+F。

“字体”组中的对话框启动器

在“填充”选项卡上,在“背景色”下方选择所需的颜色。

单元格填充和图案对话框
要使用包含两种颜色的图案,请在“图案颜色”框中选择一种颜色,然后在“图案样式”框中选择一个图案。

要使用具有特殊效果的图案,请单击“填充效果”,然后选择所需的选项。

提示: 在“示例”框中,您可以预览所选的背景、图案和填充效果。

删除单元格颜色、图案或填充效果
要从单元格中删除任何背景色、图案或填充效果,只需选择单元格。 然后单击“开始”>“填充颜色”旁边的箭头,然后选择“无填充”。

“开始”选项卡上的“字体”组
打印单元格颜色、图案或有颜色的填充效果

以上是关于如何通过Delphi程序给Excel表格设置表格线的主要内容,如果未能解决你的问题,请参考以下文章

DELPHI中的cxgrid,如何用代码实现表格内容居中显示,注意不是表头是内容

delphi 如何在Delphi中执行将Excel表格里的内容导入数据库中相应表

Excel 表格中为啥有些区域没有边框

Excel 怎样设置线框颜色

怎么设置HTML表格细边框

如何给html页面添加excel表格