找回密码
 立即注册

QQ登录

只需一步,快速开始

Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-8-17 18:18:33
11#
按照你这边的模板,获取边框的最后一行,应该用下面的代码,通过Borders[ BordersIndex.EdgeBottom],判断下边框是否存在
  1. workbook.ActiveSheet.Range[m].Borders[ BordersIndex.EdgeBottom].LineStyle != BorderLineStyle.None
复制代码
回复 使用道具 举报
浩淼
注册会员   /  发表于:2021-8-17 18:26:57
12#
Richard.Ma 发表于 2021-8-17 18:18
按照你这边的模板,获取边框的最后一行,应该用下面的代码,通过Borders[ BordersIndex.EdgeBottom],判断 ...

但是用代码循环判断第一列时,除了第一个单元格,获取到的其他单元格的边框属性都是none是怎么回事呢?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-8-18 09:26:26
13#
已经修改了你的代码,把Borders变为了Borders[ BordersIndex.EdgeBottom],完整的修改后的代码我已经贴在下面,测试没有问题,这个可以用来判断第一列存在下边框的最后一行,
同理,通过Borders[BordersIndex.EdgeRight]也可以来判断存在右边框的最后一列



  1.             int rowsum = workbook.ActiveSheet.GetUsedRange( UsedRangeType.Style).RowCount;//有效区域的行数
  2.             int row = 0;//标记行数,用来确定模板具体有多少行

  3.             string m;
  4.             for (int i = 1; i <= rowsum+1; i++)
  5.             {
  6.                 m = "A";
  7.                 m += i;
  8.                 Console.WriteLine(workbook.ActiveSheet.Range[m].Borders[BordersIndex.EdgeBottom].LineStyle.ToString());

  9.                 if (workbook.ActiveSheet.Range[m].Borders[ BordersIndex.EdgeBottom].LineStyle != BorderLineStyle.None)
  10.                 {
  11.                     row = i;
  12.                     workbook.ActiveSheet.Range[m].Interior.Color = Color.Pink;
  13.                 }
  14.             }

  15.             Console.WriteLine("有效区域行数:" + rowsum);
  16.             Console.WriteLine("模板行数:" + row);
复制代码


image.png130758971.png
回复 使用道具 举报
浩淼
注册会员   /  发表于:2021-8-18 09:36:43
14#
Richard.Ma 发表于 2021-8-18 09:26
已经修改了你的代码,把Borders变为了Borders[ BordersIndex.EdgeBottom],完整的修改后的代码我已经贴在下 ...

好的,谢谢了
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-8-18 09:42:18
15#
不客气,有其他问题欢迎发新帖咨询
回复 使用道具 举报
汇新泓博
初级会员   /  发表于:2022-8-8 15:59:27
16#
Richard.Ma 发表于 2021-8-17 10:35
您发过来的文件我看了一下,用excel打开确实看不出空白区域有什么修改,但是如上面的回帖所说,任何的属性 ...

这个方法报错是怎么回事
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-8-8 17:53:49
17#
你是说用GetUsedRange会报错吗,建议重新发一个帖子,这样方便记录问题

帖子里附上重现问题的步骤和文件,能重现出问题就可以,或者上传一个demo也行,
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部