找回密码
 立即注册

QQ登录

只需一步,快速开始

小叮当丷
中级会员   /  发表于:2024-2-23 15:48  /   查看:2388  /  回复:8
30金币
您好,excel中有部分单元格没有网格线,通过清除格式可以显示出来,如图:

image.png867458190.png image.png160639037.png ;
想在spreadjs中清除该部分的格式以显示网格线,通过sheet.clear(0, 0, sheet.getRowCount(), sheet.getColumnCount(), GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.StorageType.style);无法清除;
经检查此处非白色边框,清除边框 border.style = GC.Spread.Sheets.LineStyle.empty;也无效;

最佳答案

查看完整内容

您好,这是因为一种是针对单元格样式级别的,一种是针对行列样式级别的,优先级高的样式会覆盖优先级低的样式,具体样式等级您可以参考这篇文章:https://demo.grapecity.com.cn/spreadjs/help/docs/faqs/cells/style/style-priority-level 使用sheet.clear(0, 0, sheet.getRowCount(), sheet.getColumnCount(), GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.StorageType.style);代码会清除单元格级别的样式,但是使 ...

8 个回复

倒序浏览
最佳答案
最佳答案
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-2-23 15:48:10
来自 10#
您好,这是因为一种是针对单元格样式级别的,一种是针对行列样式级别的,优先级高的样式会覆盖优先级低的样式,具体样式等级您可以参考这篇文章:https://demo.grapecity.com.cn/sp ... tyle-priority-level

使用sheet.clear(0, 0, sheet.getRowCount(), sheet.getColumnCount(), GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.StorageType.style);代码会清除单元格级别的样式,但是使用我之前提到的代码则是清除的行列级别的样式。
回复 使用道具 举报
RoyAji
初级会员   /  发表于:2024-2-23 16:20:59
3#
sheet.clear(0, -1, sheet.getRowCount(), -1, GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.StorageType.style); 能清除,但是表格的样式也都丢干净了
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-2-23 16:21:43
4#
您可以设置 setBorder的参数1为undefined或null,从而清除边框:
sheet.getRange(1, 1, 1, 1).setBorder(undefined,{ top: true, bottom: true, left: true, right: true })
回复 使用道具 举报
小叮当丷
中级会员   /  发表于:2024-2-23 17:06:03
5#
RoyAji 发表于 2024-2-23 16:20
sheet.clear(0, -1, sheet.getRowCount(), -1, GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.St ...

试过了,没清掉
回复 使用道具 举报
小叮当丷
中级会员   /  发表于:2024-2-23 17:08:53
6#
Richard.Huang 发表于 2024-2-23 16:21
您可以设置 setBorder的参数1为undefined或null,从而清除边框:
sheet.getRange(1, 1, 1, 1).setBorder(u ...

可以清除边框,但这里好像不是边框样式,清楚后依然为空白
回复 使用道具 举报
小叮当丷
中级会员   /  发表于:2024-2-23 17:09:17
7#
导入的表样

(汇总)高新区债务偿还统计表 2023年5月5.31-表样.zip

15.68 KB, 下载次数: 398

回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-2-23 17:20:29
8#
根据您提供的Excel文件来看,看上去像是给18~23行设置了白色的背景色,可以使用以下代码来清除18~23行的样式:

  1. sheet.clear(17, -1, 6, -1, GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.StorageType.style);
复制代码


效果如下:

image.png419619750.png
回复 使用道具 举报
小叮当丷
中级会员   /  发表于:2024-2-26 08:54:07
9#
Joestar.Xu 发表于 2024-2-23 17:20
根据您提供的Excel文件来看,看上去像是给18~23行设置了白色的背景色,可以使用以下代码来清除18~23行的样 ...

您好,为什么sheet.clear(0, 0, sheet.getRowCount(), sheet.getColumnCount(), GC.Spread.Sheets.SheetArea.viewport, GC.Spread.Sheets.StorageType.style);这句话没法清除,两者的区别是什么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部