找回密码
 立即注册

QQ登录

只需一步,快速开始

俊123

初级会员

29

主题

83

帖子

234

积分

初级会员

积分
234
俊123
初级会员   /  发表于:2024-9-11 18:01  /   查看:712  /  回复:4
10金币
请问被合并过的的单元格会丢失边框,要怎么处理?


let styleCompare = new GC.Spread.Sheets.Style();               

styleCompare.borderLeft = new GC.Spread.Sheets.LineBorder("red", GC.Spread.Sheets.LineStyle.medium);
styleCompare.borderTop = new GC.Spread.Sheets.LineBorder("red", GC.Spread.Sheets.LineStyle.medium);
styleCompare.borderRight = new GC.Spread.Sheets.LineBorder("red", GC.Spread.Sheets.LineStyle.medium);
styleCompare.borderBottom = new GC.Spread.Sheets.LineBorder("red", GC.Spread.Sheets.LineStyle.medium);

//获取坐标13,14的cell,标记为红色边框
sheet.getCell(13, 14).setStyle(styleCompare);

如果坐标13,14的cell正好是被合并过的单元格,边框会丢失一部分,如图
image.png323846434.png

最佳答案

查看完整内容

您好!对于合并单元格设置样式边框,对其中任意单个单元格设置并不会将样式边框扩展至整个合并范围,需要对合并单元格范围整体设置样式边框,以13行14列单元格为例,参考如下代码:

4 个回复

正序浏览
Wilson.Zhang
超级版主   /  发表于:2024-9-25 15:10:42
5#
您好!由于您较长时间未回复,且从跟帖回复中了解到问题已得到有效解答,那就结帖了。如有问题,欢迎发新帖沟通。
回复 使用道具 举报
俊123
初级会员   /  发表于:2024-9-11 18:32:29
3#
SpreadJS 16.1.1
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-9-11 18:21:04
2#
您好!请问下您使用的是哪个版本?
回复 使用道具 举报
最佳答案
最佳答案
Wilson.Zhang
超级版主   /  发表于:2024-9-11 18:01:31
来自 4#

您好!对于合并单元格设置样式边框,对其中任意单个单元格设置并不会将样式边框扩展至整个合并范围,需要对合并单元格范围整体设置样式边框,以13行14列单元格为例,参考如下代码:
  1. //  获取13行14列单元格所在的合并单元格
  2.             var spans = sheet.getSpans(sheet.getCell(13, 14));
  3.             if (spans && spans.length > 0) {
  4.     var span = spans[0];
  5.     //  根据合并单元格起始行列、跨越行列数为依据获取范围,并对范围设置边框样式
  6.     sheet.getRange(span.row, span.col, span.rowCount, span.colCount).setStyle(styleCompare);
  7.             }
复制代码



回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部