找回密码
 立即注册

QQ登录

只需一步,快速开始

Wilson.Zhang
超级版主   /  发表于:2024-8-16 14:15:51
11#
AKA_HSTS 发表于 2024-8-16 14:02
建议可以考虑使用formula conditional format, 例如第一个的formula 条件可以设成:=IF(ISNUMBER(B46),B4 ...

回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-8-16 14:16:53
12#
您好!亲测9楼热心用户提出的方案有效,您可以参考。
回复 使用道具 举报
wutao@digiwin
金牌服务用户   /  发表于:2024-8-16 14:47:31
13#
Wilson.Zhang 发表于 2024-8-16 13:34
您好!这里涉及的功能是设计如此,和Excel保持了一致。先向您同步功能的调研结论如上所述,我还在调研如 ...

好的,我一开始用sheet.conditionalFormats.removeRuleByRange(i, index, 1, 1);这个方法对单元格空值移除条件设置,但是如果单元格太多会导致循环页面卡死
回复 使用道具 举报
wutao@digiwin
金牌服务用户   /  发表于:2024-8-16 15:02:48
14#
AKA_HSTS 发表于 2024-8-16 14:04
咦,这个论坛的编辑器怎么会把“D”给转成表情符号。

您好,请问能否截图贴个代码看看?
回复 使用道具 举报
wutao@digiwin
金牌服务用户   /  发表于:2024-8-16 15:38:51
15#
Wilson.Zhang 发表于 2024-8-16 14:16
您好!亲测9楼热心用户提出的方案有效,您可以参考。

麻烦提供下demo看看
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-8-16 17:11:21
16#
wutao@digiwin 发表于 2024-8-16 14:47
好的,我一开始用sheet.conditionalFormats.removeRuleByRange(i, index, 1, 1);这个方法对单元格空值移 ...

您试一下在循环流程前后分别加上暂停绘制和恢复绘制的代码,如下代码所示:

  1. //  暂停绘制
  2. sheet.suspendPaint();
  3. //  恢复绘制
  4. sheet.resumePaint();
复制代码


回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-8-16 17:11:38
17#
wutao@digiwin 发表于 2024-8-16 15:38
麻烦提供下demo看看

您可以参考如下代码:
  1. var cfs = sheet.conditionalFormats;
  2. cfs.addFormulaRule("=IF(ISNUMBER(B4:D6),B4:D6>50,FALSE())", style, [new spreadNS.Range(r + 1, c, h - 1, w)]);
复制代码


回复 使用道具 举报
wutao@digiwin
金牌服务用户   /  发表于:2024-8-19 19:23:36
18#
Wilson.Zhang 发表于 2024-8-16 17:11
您可以参考如下代码:

image.png788513183.png 上述代码是有单元格索引,如果是这种表格呢,没有单元格索引,怎么判断整个区域大于50的数
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-8-20 08:49:18
19#
wutao@digiwin 发表于 2024-8-19 19:23
上述代码是有单元格索引,如果是这种表格呢,没有单元格索引,怎么判断整个区域大于50的数

您好!您图中的是Table吗?Table区域中的单元格也可以通过行列索引定位,因此设置条件格式的方式也遵循在工作表中单元格区域的设置方式。
回复 使用道具 举报
wutao@digiwin
金牌服务用户   /  发表于:2024-8-20 09:19:59
20#
本帖最后由 wutao@digiwin 于 2024-8-20 10:38 编辑
Wilson.Zhang 发表于 2024-8-20 08:49
您好!您图中的是Table吗?Table区域中的单元格也可以通过行列索引定位,因此设置条件格式的方式也遵循在 ...

您好,我这边是用表格
1、是表格,我设置行列索引没有作用,我们代码是根据
https://gcdn.grapecity.com.cn/showtopic-222289-1-1.html
这个链接里面的demo绘制spreadjs
,请问需要如何设置吗?能否给个代码?

2、 image.png47614439.png sheet.conditionalFormats.addFormulaRule("=IF(AND(ISNUMBER(B46), B46 > 50, B46 < 80), TRUE(), FALSE())", style, [new spreadNS.Range(r + 1, c, h - 1, w)]) 这样写大于50且小于80怎么没有生效
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部